diff --git a/content/.gitkeep b/content/.gitkeep deleted file mode 100644 index e69de29bb..000000000 diff --git a/content/01.far-reaches.md b/content/01.far-reaches.md new file mode 100644 index 000000000..b1f07e9d2 --- /dev/null +++ b/content/01.far-reaches.md @@ -0,0 +1,3 @@ +--- +title: The Far Reaches +--- diff --git a/content/Graphics/01.god-rays.md b/content/Graphics/01.god-rays.md new file mode 100644 index 000000000..bd7a2a25d --- /dev/null +++ b/content/Graphics/01.god-rays.md @@ -0,0 +1,6 @@ +--- +draft: false +title: Screen Space God Rays +tags: + - graphics +--- diff --git a/content/index.md b/content/index.md new file mode 100644 index 000000000..613968a67 --- /dev/null +++ b/content/index.md @@ -0,0 +1,17 @@ +--- +title: Welcome to Shaderlog! +--- +A long time ago in a year known to many by 2003, I played my first "real" video game: **Pokémon Sapphire**. After encountering it in a Walmart in the great state of Maine, I quickly became enamored with the vaguely whale-shaped creature on the box art for the game. And so I began my scheming to acquire the game for myself. + +In about ~0.03 seconds I had formulated my plan. It was simple. Brilliant even. All I need do was ask my grandmother who was with me at that fated Walmart for it. The trick? My parents weren't with us to say no. + +And so began my love of video games in earnest. I played many Gameboy Advance games over the next couple of years, eventually migrating to PC and console gaming but always had a soft spot for games with pixel art and turn-based strategy like **Pokémon**, early **Fire Emblem** and of course **Final Fantasy**. + +Fast-forward a couple decades and now I am a full-time software engineer with a degree and background that while not all that uncommon these days, puts me in the perfect position to be able to learn how to develop those very same turn-based games I loved growing up. + +So come join me in here in this blog where I will be attempting to document my progress as an amateur game developer as I work on my new open-world tactics RPG game **The Far Reaches**. I will be splitting these into two major categories: +- **Graphics Blog** A series of posts designed to introduce the high-level concepts and problems I encounter during development as well as my designs and solutions for solving them. I will attempt to explain these in layman's terms but a cursory understanding of some topics may be required. +- **Dev Log** - A series of more casual posts that detail the progress and design decisions I have made for my game. These will likely be more of a "stream of consciousness"-type post that go over more game-specific stuff. + +## Dev Log +## Graphics Blog diff --git a/package-lock.json b/package-lock.json index f180b7f8f..2db938b4a 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1360,11 +1360,11 @@ } }, "node_modules/braces": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/braces/-/braces-3.0.2.tgz", - "integrity": "sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A==", + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/braces/-/braces-3.0.3.tgz", + "integrity": "sha512-yQbXgO/OSZVD2IsiLlro+7Hf6Q18EJrKSEsdoMzKePKXct3gvD8oLcOQdIzGupr5Fj+EDe8gO/lxc1BzfMpxvA==", "dependencies": { - "fill-range": "^7.0.1" + "fill-range": "^7.1.1" }, "engines": { "node": ">=8" @@ -2351,9 +2351,9 @@ } }, "node_modules/fill-range": { - "version": "7.0.1", - "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.0.1.tgz", - "integrity": "sha512-qOo9F+dMUmC2Lcb4BbVvnKJxTPjCm+RRpe4gDuGrzkL7mEVl/djYSu2OdQ2Pa302N4oqkSg9ir6jaLWJ2USVpQ==", + "version": "7.1.1", + "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.1.1.tgz", + "integrity": "sha512-YsGpe3WHLK8ZYi4tWDg2Jy3ebRz2rXowDxnld4bkQB00cc/1Zw9AWnC0i9ztDJitivtQvaI9KaLyKrc+hBW0yg==", "dependencies": { "to-regex-range": "^5.0.1" }, @@ -3198,9 +3198,9 @@ } }, "node_modules/katex": { - "version": "0.16.8", - "resolved": "https://registry.npmjs.org/katex/-/katex-0.16.8.tgz", - "integrity": "sha512-ftuDnJbcbOckGY11OO+zg3OofESlbR5DRl2cmN8HeWeeFIV7wTXvAOx8kEjZjobhA+9wh2fbKeO6cdcA9Mnovg==", + "version": "0.16.10", + "resolved": "https://registry.npmjs.org/katex/-/katex-0.16.10.tgz", + "integrity": "sha512-ZiqaC04tp2O5utMsl2TEZTXxa6WSC4yo0fv5ML++D3QZv/vx2Mct0mTlRx3O+uUkjfuAgOkzsCmq5MiUEsDDdA==", "funding": [ "https://opencollective.com/katex", "https://github.com/sponsors/katex" diff --git a/quartz.config.ts b/quartz.config.ts index fa08723e9..5a8fbeff5 100644 --- a/quartz.config.ts +++ b/quartz.config.ts @@ -8,12 +8,10 @@ import * as Plugin from "./quartz/plugins" */ const config: QuartzConfig = { configuration: { - pageTitle: "🪴 Quartz 4.0", + pageTitle: "Blog", enableSPA: true, enablePopovers: true, - analytics: { - provider: "plausible", - }, + analytics: null, locale: "en-US", baseUrl: "quartz.jzhao.xyz", ignorePatterns: ["private", "templates", ".obsidian"], diff --git a/quartz.layout.ts b/quartz.layout.ts index b5a1639eb..02301d8f9 100644 --- a/quartz.layout.ts +++ b/quartz.layout.ts @@ -20,6 +20,7 @@ export const defaultContentPageLayout: PageLayout = { Component.ArticleTitle(), Component.ContentMeta(), Component.TagList(), + Component.Comments(), ], left: [ Component.PageTitle(), diff --git a/quartz/components/Comments.tsx b/quartz/components/Comments.tsx new file mode 100644 index 000000000..3fca0c51c --- /dev/null +++ b/quartz/components/Comments.tsx @@ -0,0 +1,30 @@ +// @ts-ignore: typescript doesn't know about our inline bundling system +// so we need to silence the error +import script from "./scripts/comments.inline" +import { QuartzComponentConstructor } from "./types" + +export default (() => { + function Footer() { + return ( + + ) + } + + Footer.beforeDOMLoaded = script + + return Footer +}) satisfies QuartzComponentConstructor diff --git a/quartz/components/Footer.tsx b/quartz/components/Footer.tsx index 076c37874..f1cd160b3 100644 --- a/quartz/components/Footer.tsx +++ b/quartz/components/Footer.tsx @@ -13,6 +13,7 @@ export default ((opts?: Options) => { const links = opts?.links ?? [] return (