November 2020

November 1, 2020

I know that I said I wouldn't conduct any gamedev on Sundays, and I haven't really broken that promise. I opened Substance Designer on a whim and cobbled together a quick landscape/rock texture for fun. I guess that's one way to tell I'm enjoying things.

red and white landscape made in Substance Designer
Red and White Landscape, Substance Designer

On a side note regarding NaNoWriMo: it took me 90 minutes to produce 1,776 serviceable words. That's a minor investment of my day, so if the juice continues to flow at that rate the writing shouldn't be a problem. I'm now weighing the feasibility of livestreaming on YouTube, I'll prepare to go live in the evening tomorrow since I'll have a good window of uninterrupted time then.

Completed today:
✔ Established NaNoWriMo Schedule

Tomorrow's plan:
Continue from 3-1 Getting Started with Substance Designer
Continue Preproduction Plan for Project 1

Home · Previous

November 2, 2020

I wrote nearly 2K words this morning for the ongoing NaNoWriMo 2020 challenge. I then wrote hundreds more for the creative writing classes I'm taking at university. To call today a wash for gamedev is one thing, but you must understand: writing takes it right out of me. It's hard to describe. In some ways it's like an orgasm (and I'm making a rather broad assumption you've had one, otherwise this analogy is useless), in that it's an explosive release of energy, followed by a period of exhausted contentment. Into which nothing can be poured.

I could have gone live on YouTube this evening. Maybe I should have. Livestreaming is really my only social outlet these days. I think that perhaps this whole contrived move to a different platform was just me subconsciously seeking a comfortable exit from the enterprise altogether. I spent something in the neighborhood of 8K CDN to produce the highest quality livestreams that I was capable of, and it looks as though I failed to generate an audience that would somehow make that investment worthwhile. Much like the game development journey of 2002 to 2015, it just didn't really work out. I come too late to the ballgame: the bottom of the 9th with no runs scored against a world that's already filled the scoreboard. It's also far too easy just to sleep, instead of stay awake and try to do things.

Let's just see what the 'morrow brings.

Completed today:
✔ NaNoWriMo, Day 2

Tomorrow's plan:
Continue from 3-1 Getting Started with Substance Designer
Read Rules of Play
Continue Preproduction Plan for Project 1

Home · Previous

November 3, 2020

Even though I slept in this morning, I still managed to drop another healthy dose of words into the NaNoWriMo document. It felt so good to complete this task.

I finished chapter 2 of the "Getting Started..." tutorial for Substance Designer. It's really starting to click.

colored dirt made in substance designer
Colored Dirt, Substance Designer

Completed today:
✔ NaNoWriMo, Day 3
✔ Chapter 3 Getting Started with Substance Designer

Tomorrow's plan:
Continue from 4-1 Getting Started with Substance Designer
Read Rules of Play
Continue Preproduction Plan for Project 1

Home · Previous

November 4, 2020

Today was busy for non-gamedev work. I got the words for the NaNoWriMo written, then had to concentrate on some university writing. In the evening I completed the Substance Designer refresher. Here's the completed Substance in Unreal:

textured cube with dirt and water, rendered in unreal engine 4
Cube Textured with Dirt and Water Substance, Unreal Engine 4

I need to figure out how to get the height map working. I think I need a high-resolution plane and a specific material node for it to work. Also it looks like hot trash with the default lighting, but for the results of a few days of following a tutorial it's decent.

Tomorrow's going to be another busy day for university work. On a side note, I don't miss livestreaming at all.

Completed today:
✔ NaNoWriMo, Day 4
✔ Getting Started with Substance Designer

Tomorrow's plan:
Read Rules of Play
Continue Preproduction Plan for Project 1

Home · Previous

November 7, 2020

I was about to close the NaNoWriMo document (which, like these journal entries, I edit in Adobe Dreamweaver) when I realized I hadn't updated this in a couple of days. Thursday and Friday, after completing the words necessary to keep the creative writing tasks on track, I was creatively exhausted. I think I might be slipping into a mild seasonal depression. I'm not sure if it's made worse by the return to game development. It could very well be that I carry some dark stain upon my soul from my last failed attempt. At least I'm aware of it this time around.

I wasn't completely idle in the gamedev department. I'd actually spent a lot of time in Substance Designer. I started a smaller, older tutorial on making a brick wall, but I'd gotten frustrated with the results and discarded them. The tutorial was a low-resolution capture from a livestream, and not the greatest quality to begin with. This morning I acquired a set of fully-commented Substance graphs, and I'm planning to look through them to "reverse engineer" the process. I'll discuss that in more detail in a future post.

Completed today:
✔ NaNoWriMo, Day 7

Tomorrow's plan:
Read Rules of Play
Continue Preproduction Plan for Project 1

Home · Previous

November 8, 2020

I started documenting my re-discovery of the Substance tools. That's really all that got done today.

Completed today:
✔ Substance Notes, Blending Modes
✔ Called NaNoWriMo 2020

Next day's plan:
Read Rules of Play
Continue Preproduction Plan for Project 1

Home · Previous

November 10, 2020

I'd apologize for the sporadic posting, but there's nothing to feel sorry for. This is the way that the journey is unfolding.

It's been 2 weeks since I last cracked open Rules of Play. I read chapter 7 on defining games. As a reminder, the book defines game design as the process by which a game designer creates a game, to be encountered by a player, from which meaningful play emerges. Now it supplements this with a definition for game as a system in which players engage in an artificial conflict, defined by rules, that results in a quantifiable outcome (p. 81). It arrives at this by analyzing a rogue's gallery of past game and play scholars' opinions on the matter. One thing that nearly all of those big brains agreed on was that a game proceeds according to rules that limit players (p. 79). There's also some discussion on whether puzzles qualify as games (they do) and the nature of goals in traditional tabletop role-playing games (open-ended). An interesting chapter, and it briefly introduces the relationship between games and play (they are both subsets of one another) setting up for more detailed exploration later.

I've been obsessed with Substance Designer. More entries in my notes, and I'm continuing to follow random tutorials to get a better sense of different work flows and practices. I'm also trying to establish some organizational methods.

Today also marks 1 month since I re-booted myself as a game developer. In that time I've reacquainted myself with Unreal Engine, 3DS Max, and Substance Designer. I've also started formal academic study of game design, something I didn't really get back in '09 at Vancouver Film School. In the coming month I'd like to spend some of these hours with FL Studio, and that would complete the suite of primary tools I need for producing a game.

an image of an organized substance designer graph
Frames and Spacing Help Organization in Substance Designer

Completed today:
✔ Substance Designer: Mastering Blending Modes
✔ Substance Designer: Aged Wood Planks 1-3
✔ Read Rules of Play, Chapter 7

Next day's plan:
Read Rules of Play, Chapter 8
Aged Wood Planks 4+

Home · Previous

November 11, 2020

I only slept 4 hours last night. I'm not sure why.

I picked up an educational license for Articy:Draft 3, and spent a couple of hours re-acquainting myself with the basics. The "First Steps" tutorial series moves at a very rapid pace and glosses over a lot of the work, but when coupled with the built-in tutorial it's not completely overwhelming. Articy can be used to fully develop a visual novel or choose-your-own-adventure type game, building levels and worlds, and comes with options for scripting and exporting variables. I'll talk more about this as I go. For now, I've established a notes document.

Spent 20 minutes trying to figure out why the new Smart Extrude function wasn't working in 3DS Max, only to find that I hadn't installed the update. This was odd, as I installed from a fresh re-licensing last month, and the update (2012.2) was released in August. There was no in-suite notification, and the "About" section was vague on what version was installed. I suppose I'll have to be more vigilant in the future.

I also established a notes document for 3DS Max while speed-modeling this broadsword:

basic 3ds max render of a broadsword
1-hour 3DS Max Speed-model of a Broadsword

Completed today:
✔ articy:draft 3: First Steps 1-5
✔ 3DS Max Speed-model (broadsword)

Next day's plan:
Read Rules of Play, Chapter 8
Substance Designer: Aged Wood Planks 4+
articy:draft First Steps 6+

Home · Previous

November 12, 2020

I couldn't tell you what led me to the strange discovery I made this morning. I woke up after a solid 8 hours of sleep, made a cup of coffee, and sat down to whittle away at the day's tasks. I did some very quick experiments with Crease in 3DS Max, and then found myself looking through my Dropbox. I'm serious: I'm sitting here as I write this, some 4 hours later, and I cannot for the life of me remember what brought me to search through the old cloud storage. Only that there I was, looking at the Public folder, and lo and behold almost all of the games that I'd published to the web from 2011 to 2013 were sitting there.

I loved Unity as a game authoring tool because it could easily export to a number of platforms from a single source. That kind of function is mandatory nowadays, but back in '10 it was a huge selling point for indie game authors. When Unity introduced the ability to publish games to the browser, I started focusing on that vector as my main way to reach an audience. It was never as popular as Flash, and it required the end-user to download and install a (then questionable) plug-in, but it worked. And it was the first easy-to-use 3D game publisher.

The old web player has long been defunct. It died around the same time I started losing motivation to develop in '13. So although I found myself staring at a legacy of Dark Acre videogames, I thought that I had no way to play them. A Google search and a couple of YouTube videos later, I found a little program called GameLoad. I had to restart my computer after installing the plug-in from inside GameLoad, but I was able to run my projects! So I blew my entire morning reliving the past. I'll be publishing a YouTube video (or series) demonstrating these relics. What's really killer is that the date stamps are all accurate, giving me a crystal-clear time line of my gamedev output down to the minute. I don't know whether to laugh or cry.

a directory listing of the web published Dark Acre games from 2011 to 2013
A True Archive of Dark Acre Web Games from 2011 through 2013

I spent a little time today tooling around with Substance Alchemist. I had no idea what this extension of the suite was used for, and I've started a section in the Substance notes to cover it. It seems it's a preview and gallery-type thing. You take completed Substance materials, gather them in collections, and then can share what you've got:

an example of a substance alchemist board
An Example of a Substance Alchemist Board

I learned that Substance has its own launcher, and what self-respecting suite of software doesn't, really? There's a great integration to their subscription-based material-share library that lets a user import from the web directly into the Substance software being used. Kinda neat. It makes me think that, given enough time for planning, I could come up with a complete budget for the assets needed to publish an ultra high-quality game. I could work that into a crowd-funding project pretty easily, and justify a funding ask.

Chapter 8 of Rules of Play discussed the features revealed by a systematic breakdown of a digital game. If that sentence put you to sleep, imagine trying to study, academically, this material! Some key takeaways: The key question for game designers and digital media is not, What is it? but instead, What can it do? (p. 87). This is so important when cobbling together the skills necessary to produce a videogame. Understanding the nuances of form, visual and audio output, player inputs, and a whole host of other elements that must synchronize to "make fun happen" is a Herculean task.

The chapter also identified 4 traits that summarize the special qualities of digital games: immediate but narrow interactivity, manipulation of information, automated complex systems, and networked communication (pp. 87-90).

Completed today:
✔ 3DS Max Broadsword Creasing
✔ Recorded Dark Acre Web Game Playthroughs: Part 1
✔ Getting Started with Substance Alchemist: Part 1+2
✔ Read Rules of Play, Chapter 8

Next day's plan:
Read Rules of Play, Chapter 9
Getting Started with Substance Alchemist: Part 3+
Substance Designer: Aged Wood Planks 4+
articy:draft First Steps 6+

Home · Previous

November 13, 2020

I finished recording the latter half of the Dark Acre Games retrospective. I'll try to edit the footage together this weekend and start publishing videos to the YouTube channel.

I've decided to step back from using Quixel products. This would include Bridge and Megascans. They are quality products, and if you're looking to use photo-realistic textures in your project I can still highly recommend them. It just seems that I should make a hard and fast choice regarding my texturing pipeline. Quixel used to be incredible. In fact, I used NDO and 3DO to learn normal mapping long before I got into Substance. But the suites offer similar results with different workflows, so I'm making the decision to focus my expertise and gain efficiency in one over the other. That's not to rule out the possibility of using Quixel software in the future, but it no longer has to compete for headspace when considering projects going forward.

Chapter 9 of Rules of Play discusses the concept of the magic circle. It's that space where play of game occurs, a supposed separate but inclusive reality that transports the player to another dimension of experience. I think for the common gamer this is referred to as a "sense of immersion", and when a game breaks that it can be seen as getting unceremoniously tossed out of the magic circle.

I've been sort of binging the Substance tutorials, so I'm going to pull the reins back hard and start pacing myself. I'll do a section per day, just making sure I keep my feet wet in the tools. I need to start doing this across every tool I use.

One of the more interesting tools that Substance introduced back in the day was "B2M", or Bitmap to Material. The premise was that you could take any old image file and process it into a game-ready material. It never quite produced the results I hoped for, and only ever served as a stop-gap or pre-visualizer for prototypes. Now with their new AI-powered version in Alchemist, the results are kind of insane:

example of random image converted to material in substance alchemist
Skitterphoto (upper left, CC0) Converted to Parquet Material in Substance Alchemist

Completed today:
✔ Recorded Dark Acre Web Game Playthroughs: Part 2
✔ Read Rules of Play, Chapter 9
✔ Substance Designer: Aged Wood Planks 4
✔ Substance Alchemist: Image to Material (Bitmap To Material)

Next day's plan:
Read Rules of Play, Chapter 10
Substance Designer: Aged Wood Planks 5
Substance Alchemist: Image To Material (AI Powered)
articy:draft First Steps 6+

Home · Previous

November 14, 2020

It's Saturday, and no rest for the wicked. Immediately fired up the articy:draft tutorial and forged ahead. Yes, it's a writing/narrative tool, but it can also serve as a complete adventure game development toolkit. It handles the creation, getting, and setting of global and local variables. I'd never used this functionality before today, and it's very straightforward. It could be a fun exercise to build out a little proof-of-concept for a choose-your-own-adventure-ish experience. I'm also going to start linking publicly available tutorials in the "Next day's plan" section of these entries, just as a quality of life thing.

I quickly covered an alternate way to set up individual plank details using Vector Warp Grayscale. The method only works inside Substance, so if I wanted to keep the procedural function of a material inside Unreal I'd need to stick with standard Directional Warp. After that it was on to integrating the wood knots into the planks:

render of knotty wood material in substance designer
Knotty Wood in Substance Designer (WIP)

The more I use Substance Alchemist, the more I like it. The Image to Material feature is powerful, but slow. It calls on neural networking to draw height, normal, and other mapping data from a flat image. This can be very GPU-intensive. The results are consistently amazing, at least with ground textures.

I finally got around to spending some time in my audio tool of choice, FL Studio. As with everything else, there's a great series of tutorials. I started laying down a basic track, and then the tutorial called for some live recorded guitar. I'll look into setting up the guitar tomorrow. As with the other tools, I've started a notes document.

fl studio track visualization
I've Owned an FL Studio License for 18 Years

If you've been following along, you may be asking why I'm spending so much time (over a month now!) on asset creation. You're right: I've done exactly zero practical gamedev. The thing is, I'm very confident in my ability to wrestle Unreal Engine into doing what I want it to do. But historically, my games have never had a strong presentation. And in this business, presentation is everything. So I'm ramping up all over the place with regard to asset creation. Once I have a comfortable routine of bouncing around in the various tools, I'll put together a design and then spend a portion of each day producing models, textures, narrative, and audio. This is all experimental and subject to change, but at least now I've verbalized my present intent.

I need to add some form of 3D Max work into the dailies. Substance Alchemist is kind of just a bonus exercise at this point, so once the intro tutorials are done there I'll replace that unit with a 3D modeling study. Also important: don't lose sight of the fact that I'm still pursuing a university degree in writing!

Note: reformatted "end of day" summaries to make better use of HTML going forward.

Completed today:

Next day's plan:

Home · Previous

November 16, 2020

I had a fantastic day off, even if I had to force myself to enjoy it. One of the biggest challenges I face is reigning in the desire to keep working and just chill out.

I'm done with the basics of Substance Alchemist. It's fundamentally a simplified abstraction of Designer and Painter. I feel like it exists to help non-technical artists bridge the gap between concept and production. I don't know how useful it will be for my own pipeline, but it's good to know it's a thing. There are some interesting options available for fast production of layered and blended materials, as well as the material library "idea board" output. The advanced bitmap to material function could also come in handy when doing rapid iterations on textures. I worry that it could become a crutch that replaces actual production of Substance materials.

I brought the electric guitar out of storage to try and record it into FL Studio. This caused a cascading chain reaction where I learned that the drivers I was using for the Behringer UM-2 audio interface were not the "best" ones. Installing ones that let me split the incoming signal properly got the guitar sounds feeding into the PC correctly, but I couldn't self-monitor while playing. I'm sure there's a method for monitoring while recording into FL, so we'll figure that out next day. Side note: my guitar skills have horribly atrophied, and I'm thinking it might be a good idea to integrate some recovery training time into the dailies.

Completed today:

Next day's plan:

Home · Previous

November 18, 2020

I took a day, yesterday. People say it's important. To take days. So I took one. I played entirely too much Sniper Elite 4. I'm cracked on that game. I also made this from 32 slices of the Dark Acre tractor logo:

the dark acre tractor logo, sliced in 32 vertical strips and animate to fall like rain
It's a Little Surprising That There's No Easy "Slices to Layers" Function in Either Photoshop or After Effects

I had to manually slice the image in the Photoshop. It's probably possible to script the process, but it was a nice exercise. If I were to do another iteration, I'd make the slices drip off the frame rather than the fade out.

I've been engaging in far too many "what coding language should I learn" posts on Reddit. There's a lot of apparent savants and computer scientists out there who make it sound like it's trivial to learn something like C++. I doubt there's any CS grads worth their salt lurking in gamedev subreddits. From firsthand experience I can say that learning to optimize code and effectively manage memory is a craft that takes years of higher ed to truly grasp. I couldn't get my own head around it. That's why I failed and dropped out.

articy:draft (despite the lower-case name and colon) is a solid tool. The more familiar I get with it, the more inspired I am to use it to, at least, draft out an adventure game. I could complete a full paper prototype of "The Child" if I wanted to. Also doing a handful of 10-minute tutorials every day might not seem like much, and it certainly doesn't feel like much, but it all adds up.

The Levels node in Substance Designer is one of the most useful for changing the look of masks and height maps. Histogram operations allow finer/more specific control over the levels. After putting this course to bed, I'm inches away from just sitting down and making Substance materials. We'll continue with the wood planks and do a couple more directed graph tutorials, then I'll start a "Daily Substance" series.

It seems there's no great way to monitor guitar while recording in FL Studio. It comes down to latency of input and, even with the powerhouse of a PC that I run, there's always going to be some delay. For my purposes, recording a guitar track clean while monitoring from the Behringer UM-2 then modifying that track in FL Studio will be the way to go. If I want additional effects like delay and distortion on the live end, I'll have to look into pedals or other hardware patches. Side note for guitar: I've started a 15-minute daily practice of scales. I should also do something for keys.

Chapter 10 of Rules of Play brings the first unit of study to a close. It seems we're done with the framework of definitions and the establishing of schema for knowledge. Rules, play, and culture are the core schema the book will use.

Completed today:

Next day's plan:

Home · Previous

November 19, 2020

I couldn't sleep at all last night. I stayed awake until 0430 creating gifs of the Dark Acre Tractor. I've posted them to the Twitter and an Imgur gallery since it gets expensive to host large images here. Not strictly gamedev-related, but I got a ton of incidental practice with After Effects. I've been meaning to spend more time with the tool, and I learned a bunch of stuff to help with automation.

Once I got started with the day it was half-over. There was an outstanding assignment for uni that I hammered out, then spent a few more hours running completion tasks in Sniper Elite 4. We'll just carry over yesterday's plan.

Home · Previous

November 20, 2020

articy:draft's got it's own built-in text editor. It's unweildy and only supports linear dialogue scripting. There's also support for the import of Final Draft documents, but it also comes with a gotcha where it separates out description elements into their own modules. For true player-driven narrative it seems the best way to script is by using the Flow editor and creating a story that properly branches from the get-go.

The "tips & tricks" lesson in Substance Academy is a text-based walkthrough provided by a CDPR artist. It's okay, and I learned a bit more about using gradients. It's chunky, so I got the base colors done and I'll continue the rest next day.

The FL Studio plugins overview was a quick drink from the fire hose. Michael Wynne is a talented musician and instructor, and if you're looking to learn production in FL his channel on YouTube is a one-stop shop. That said, I'll likely be re-visiting the plugins video with a better focus on noting what Michael calls out as the more important tools within FL. I noticed I somehow slid off the rails of the "official" FL Studio learning playlist, so we'll re-align next day.

Completed today:

Next day's plan:

Home · Previous

November 21, 2020

Woke up and spent an hour twisting knobs in FL Studio. I actually have the kernel of a decent choon in the oil. What's needed to make it pop is a better understanding of automation. Toss that on the TODO list, and really, at this stage of the game I should be following focused paths in the toolkits. Especially in tools I've owned for nearly 2 decades.

Four hours ago I had the intent to blaze through the rest of the articy:draft first steps tutorials, but got waylaid by Reddit and an indie game prototype. Cleaned up two of the tutorials on scripting, though. It's straightforward. I'd like to see how it integrates with something like Unreal, though. I supposed that's coming up. The video series isn't terrible, but there were 68 likes on part 1 and 8 on part 12. The software is a little on the cumbersome side. How would I improve it? Good question, and the answer will cost you $60/hour plus travel and accommodation.

I dealt with a bunch of running around in the afternoon, hopefully avoided contracting the C-19. When I got home, I reviewed the plugin video from the other day in order to nail down the keys. Documented in the notes.

Completed today:

Next day's plan:

Home · Previous

November 22, 2020

I woke up in the middle of the night with a stomach ache, and finished work on this fragment:

Dark Acre Jack · RDJ Made Me Do It

Not strictly gamedev, but a byproduct of the ongoing pursuit of excellence in self-directed re-education. Or whatever. Either way, I think I finally understand how to automate states in FL Studio, at least on a novice level. I don't know why that's taken me almost 20 years, but better late than never.

There's a lot of publishing work to do. It's unrelated to the gamedev stuff, but it impacts what happens here. It's supposed to be the actual work that I'm doing, and I've neglected it for far too long. I spent a few hours looking back into digital book publishing. Much like the gamedev, not too much has changed in the last 5 years, but I do need to reformat the workflow to incorporate Dreamweaver. The core content of an ebook is HTML. Previously, I wrote in Google Docs. I'd export as HTML and then have to spend a long time "cleaning" the extra tags that Google adds. If I author completely in Dreamweaver, it simplifies the process and makes it much more flexible in the long run. The only downside is lack of an automatic backup system, but this is easily taken care of with a little extra discipline.

I'm going to start adding ebook publishing tasks to the dailies here for convenience sake.

Just before midnight, I managed to clear more of the wood planks I've been working on in Substance Designer. I also realized it was supposed to be Sunday. Well, it's Monday now. Let's bend time a little, yeah?

Completed today:

Next day's plan:

Home · Previous

November 23, 2020

The publishing stuff is start to take a lot of precedence. When I first assembled the EPUB for my second book, "Tale of the Madeus", I kept it all in a single chapter. The sections were broken up with a kludgey CSS solution that made an extra wide space between paragraphs. There are actually 42 chapters in the text, and when refactoring for use in Dreamweaver there's a lot of empty space and weird uncoded line breaks to clean up. There doesn't appear to be any way to automate the process, but hand-coding this is a great way to reacquaint myself with ebook publishing.

There's a big Black Friday sale going on some of the independent artist resources I've been following since my return to form. Some day I'll publish a proper list, but for now I'll tell you that I've been using JRO Tools. I purchased a Substance Painter tutorial from them today, and I'll queue it up for next day. I was going to put off reviving Painter until I had gotten my legs back with Designer, but I feel fatigued from the constant node-building. It'll be a nice change of pace to bounce back and forth between the two suites.

Random note: TIFF files produce the best results when working with alphas.

I sat down in the evening to keep working on the articy:draft tutorials, and in a rare act of wild synchronicity, they deleted all their old tutorials and are in the process of replacing them with updated versions. I shouldn't have slept on them as long as I did, and though I don't relish the idea of restarting, perhaps it's fate. A chance to reinforce what I thought I knew. So, we begin again at the new start. After a couple of hours (the videos are comprehensible at 1.75x speed) I was on Lesson 13 of 18, and decided to shift back down to dailies. So far I'm impressed with the new format. It's much clearer than the old, and follows in a more logical step-by-step format. I'm motivated to use the tool.

I cobbled together the rest of Mark Foreman's examples. This tutorial format was a little hard to follow because it was text- and image-based, and the images were tiny. My eyesight is already bad enough, and this didn't help. I lost the plot a bit toward the end of his moss example, but I got the gist. Going forward I need to start doing less with Designer (I already seem to be trying to do 2 a day) and replacing the extra with 3DS Max. But what I really need to do is start designing out a game to the point where I have an asset list. It will be much easier to put all these skills into practice with, you know, actual practice.

I looked at the official FL Studio instrument overview just before I called it a day. It was a concise accompaniment to the more in-depth view from In the Mix, and I think going forward I'm going to focus on particular synths I want to learn. Next day I'll attack Slicex.

This was the most productive day I've had since returning to creative development.

Completed today:

Next day's plan:

Home · Previous

November 24, 2020

Slicex is a lot easier to use than I first thought. Drop in a sample and the algorithms dice it up, even going as far as to recognize instruments in some cases. Each slice is then assigned to a key on the Piano Roll and can be triggered in whatever sequence you can imagine. There's advanced configurations for getting the slices into drum pad and MIDI controllers. I got the urge to pick up a decent APC/MPC controller, but my workhorse Oxygen 49 can do everything that would. Sometimes the hardest thing about hardware is knowing when you've already got the tools at your disposal, and when purchasing specialized stuff is just overkill.

On a productivity side-note, I just can't watch livestreams anymore. After all these weeks of consuming educational content, I'll tune into a show on Twitch or YouTube and almost immediately feel my IQ start to drop. I think learning to stop relying on the "comforting background voice" has been a huge step toward regaining focus and output. Your mileage may vary, likely tempered by how depressed you are.

Working on part 10 of the aged wood planks for Substance Designer and I think I lost the plot. My pebbles were invisible in the final result. I'm also supremely fatigued from listening to Wes' voice for 2 weeks now. A lot of his explanations in the tutorials are very fuzzy, but it's not really his fault. It's the nature of creating a Substance material. Much of it, particularly in the hands of an expert, is trial and error. It's simply choosing an effect, tweaking values, adding another effect, then going back and forth with sliders until you think you have something that looks how you want it. This makes for real frustration for any learner trying to follow along when something in the chain wasn't a match, and that's affecting the end output. Good luck trying to find out why something is not working. It could be an issue with a levels value set too high, or too low. It could be an opacity value in a blend somewhere. The only way to do a full correction would be to re-do an hour or two's worth of tutorial. I'll keep pressing on, there's only really 1 more video in the series. It couldn't come sooner.

The JRO Substance Painter tutorial was okay, but only just. It was made with an older version of Painter, and was delivered with just subtitles and a lo-fi music loop in the background. I don't mind the format, but it needs to be tighter and slower than what was delivered here. Still, the suite of JRO Smart Materials that came bundled with the video are solid, and will prove useful. If anything, going through this lesson showed that I shouldn't try to shortcut my way back to proficiency with Painter, but follow the usual learning paths.

Messed around in After Effects to round out the day. I produced a new GIF; the details are on the deviantArt page.

Completed today:

Next day's plan:

Home · Previous

November 25, 2020

Started the morning early with some Pins. I used to do this every day when I was an indie: wake up, make a coffee, and open up a few browser tabs worth of inspiration. I took great care to trace back the credits of any artist's work when sharing to Pinterest. All these years later, it's amazing to see who's still out there doing work, and how far along their skills have come. I feel like I've been sleeping hibernating.

Finally done with the wood planks tutorial. 13 days, maybe 6-ish hours of work in total? I should have kept closer track. The results are fine, despite losing the thread in the last leg:

split render of wood planks and graph from substance designer
An iRay Render and the Graph Wot Wrought It

I absolutely feel like I have a solid grounding in basic graph creation now. My knowledge feels more well-rounded than it did in '15. Going forward I'll be crafting my own experiments over time. I'll divide the Substance Designer portion of the day between analysing the graphs I've acquired and creating my own.

Speaking of my own experiments, I'm definitely getting comfortable with that in After Effects. There's a ton more to learn in the software, but going from concept to animated user interface element is becoming almost trivial. I threw two new ones up on Twitter and deviantArt. At this point, if I could get paid to listen to techno and animate UI elements all day, I'd be a pretty happy bird.

I finally completed the articy:draft first steps tutorial. Restarting was good. The new series is excellent, and I feel ready to create content in the tool. The only question is: what? I need to ruminate further on how I'm going to develop my game narrative skills. In the meantime, I'll use the newly-freed slot to explore the interoperability between articy:draft and Unreal Engine.

Crapped out another quick track, just to practice sampling and slicing. This time it was a clip from some Kristen Stewart thing:

Dark Acre Jack · OMG

The first commissioned game in Rules of Play is from Richard Garfield. Richard's famous for creating Magic: The Gathering. His little board game in the textbook is a little difficult for me to understand just from reading the rules. If I were feeling more ambitious, I might try to play the game, or even go as far as to digitally convert it in Unreal Engine. For the record, I'm not feeling that ambitious, so I'll just acknowledge its existence and move on.

Completed today:

Next day's plan:

Home · Previous

November 26, 2020

I've noticed something significantly different from when I was last doing gamedev: Blender is rising in popularity. In 2009 when I first started learning 3D modeling, Blender was seen as an upstart. An open source modeling tool with a "we're re-inventing the wheel" approach to interface. Now I look at many of the artist profiles and 3D art social media feeds and a good portion of the posts are Blender related. Competition is good. If I'd paid more attention in computer science, maybe I'd be keener to put my energy into the tool. Then again, I can likely accomplish everything I need and more in 3DS Max. I think for most, it's a question of accessibility and cost when it comes to choosing a modeling tool. As long as I can afford the "premiere" sets, I'll keep using them. Plus it'll increase my chances at landing a job in the industry. Now, excuse me while I go laugh myself to death.

The second JRO tutorial video was just a 4-minute explanation on how to edit their Smart Material in Painter. I'm going to shift right into the actual Substance Academy learning path.

I can't believe it's been 3 weeks since I last opened Unreal Engine. I poked around a bit with the articy:draft exporter, but it ended up requiring a computer reset. By the time I got back online I'd lost interest. I think that I should try developing a bunch of content in articy:draft first, just enough to skeletonize a story, then work on sending it over. What I want is to know exactly what data gets sent across, and in what form it arrives.

I built yet another animated UI element. It's up on the Twitter and deviantArt. This one is truly a bare-bones effort, and one that I could come back to over time and layer on more details.

I procrastinated on the envelope exploration and instead spent a bit of time with more "useful tips and tricks" in FL Studio. More stuff documented on the notes page.

Completed today:

Next day's plan:

Home · Previous

November 27, 2020

It's just past midnight. I haven't really slept. I watched Rise of Skywalker and the start of Avengers: End Game. There's a few weeks left on a free month of Disney+ that I've got. Microsoft was doing a promo, and I thought I needed to upgrade to Xbox Game Pass Ultimate. Star Wars was okay. It gave me hope for my own space opera writing. I could have written a better Star Wars.

I wonder how much personal anecdote I need to write in here. Who am I even writing this for? I think it's just part of the discipline. This is going to be a long process. If I stop to talk to myself every once in a while, it'll be fine. I'm one of the few people left who'll talk to me.

I don't know how long it's going to take to reach the publishing stage with my next game. If I had to hazard a guess, I'd say "a long while". And that's fine. I'm doing what I should have done 10 years ago. I should have taken it slower. I should have stopped to savor the creative freedom I'd earned. I'm just fortunate that the wheel has spun around back this way, and now I have a second chance. But yeah. If you've been reading this, and wondering when you're going to see an actual game materialize, friend… it's gonna be a minute.

Understanding how the attack, decay, sustain, and release (ADSR) controls affect digital audio is so fundamental, and something I've never invested the time to fully study. Turns out the principles are very straightforward. I've logged the study in the notes. The biggest problem I have now with messing around in FL is that I seem to fall into a black hole where time loses all meaning.

I fiddled around a bit with the old 3D modeling workflow. I did a simple chamfered box in 3DS Max, used the new Bake to Texture function (not really much different from the old method, just a cleaner UI) to bake a starting Normal map, exported the low-poly model, imported the model and normal map to Substance Painter, painted a bit, exported the Painter maps, and imported everything into Unreal Engine. It all worked fine. It's really time to start nailing down a game design so I have assets to craft.

Completed today:

Next day's plan:

Home · Previous

November 28, 2020

I realized I'd been doing some repetitive editing with the EPUB work, and automated some of it this morning. Crafting a digital book in 2020 still requires meticulous care when formatting. The last thing I want is any blemishes on the surface of my prose. Spelling, grammar, and formatting errors are akin to kicking a player out of the "magic circle" of a game. I don't exactly demand perfection, but the closer I can get, the better it will be for the reader. I think, going forward, we should be able to clean 10 chapters per session.

Painter retraining is coming along well. I remember enjoying Painter much more than Designer, but now that I'm learning the ins and outs I realized my biases were wrong-founded. They're two different tools that compliment each other and serve separate functions. Mastery of both will make any texture artist a juggernaut when it comes to surfacing 3D models.

Double chamfer and triple Turbosmooth seem sufficient for the level of detail I'm going for in 3DS Max. Again lamenting any kind of actionable asset list to start building from.

I was going to spend the rest of Saturday working on music and design, but I ended up getting a reminder on Twitter that I hadn't published a YouTube video I'd promised to make a month ago. What I thought would be an hour's work ended up swallowing the rest of the afternoon and most of the evening. I thought there was a bug in my Premiere Pro exports. There was no audio when I played back. At first I thought it was because of the live-linked clip that I'd sent to After Effects, the first time I'd tried the interoperability. Then I thought it was how I was fading the audio in and out. Then I thought it was an export setting. Turned out that VLC, the app I use to watch video on the PC, had hard-muted itself. In the time it took to reach an actually publishable video, I decided to author a new page here to support it and future content.

Completed today:

Next day's plan:

Home · Previous

November 30, 2020

I really gotta start saving some of the worst posts on r/gamedev and making a podcast about them. There are some truly ridiculous questions being posed on that subreddit. I think one of the most basic, essential requirements of becoming a creative person in this era is the ability to look stuff up on the 'net. It often feels like these posts are straight up trolls, poop-posts, or just people desperate for social acknowledgment.

Apparently, there's a contest going on over at Unreal Engine. As it's been a minute since I last completed a learning path for the tools, this is a great opportunity to re-integrate those modules into my dailies. I'm confident I can get it done in time.

I started with the "Build a Detective's Office Game Environment" course. Right off the bat, it's clear this course models an actual studio pipeline. There's a brainstorming session following a brief, and that offers great insight on how to make ideas into actionable work. So often you see questions from new developers (and new creatives in general) on "how do you come up with your stuff?". For me it's always about asking and answering questions until I've got a picture of where to go. That Q&A work often ends up crafting the framework for what's come, whether it's a piece of creative writing or a videogame. There's times where it's great to sit down and improvise, riff, try to "jazz" my way through a project, but any time I've achieved concrete results it's come through making a ton of creative decisions before doing any actual production.

The first lesson reminded me that Pureref is a thing. I used to use this image reference tool back in the "first age" (I really need to find a good term to describe the first indie gamedev go-around) and it's gone largely unchanged. It's cleaner than Kuadro.

The opening module provided a good pre-production work flow for environment work:

  1. Ask and answer some basic questions:
    • Who inhabits the environment?
    • What is it used for?
    • Where is it?
    • When is it used?
  2. Create a reference board of related images.
  3. Draw a simple map of the location.
  4. Distill ref board down to a mood board that conveys:
    • Art style.
    • Subject matter.
    • Structure.
  5. Establish asset naming conventions:
    • SM prefix for static meshes.
    • T prefix for textures with appropriate suffixes:
      • _D for base color.
      • _N for normal map.
      • _M for occlusion/roughness/metallic masks.
    • M prefix for master materials.
    • MI prefix for instanced materials.
  6. Establish a file hierarchy.
  7. Create an asset list.

I absolutely needed this refresher. The module then digs into the engine, and has a very helpful section on clearing the FPS starter template. For me, most of this was review. It's very new-user friendly.

quiz question from unreal engine learning path
You'd Be Surprised How Easy It Is to Get This Wrong

There's a section on importing a blockout mesh, and I got a quick speed-model session in trying to replicate what the instructor had done in Maya. The units in my 3DS Max were set to inches, and so my results came in as a tiny little room. I got frustrated and looked around for the instructor's model. Unreal gives you a Marketplace code that you can redeem for project files, and though I was able to redeem the code I couldn't find the files anywhere. I've submitted a support ticket.

I noticed that I hadn't started a notes page for Unreal Engine on this site, so I fixed that. Then I remembered that I'd taken extensive notes on the tools back in '15. Sure enough, they were still in a 26-page document on my Google Drive. I've started translating them over. I wonder how much of the 2D stuff is still valid?

I was stuck in the car for a while this afternoon. Rather than continue reading Tim Willock's excellent "The Religion", I opened up Google Keep and plotted out some game design. It's been easily 5 years since the last time I put "pen to paper", and the ideas came in a quick torrent. I'm not about to commit to anything beyond brainstorming, but I'll say there's a good start there. More as it develops.

blurred image of google keep design notes
Google Keep Has Been My Go-to Note-taker For Years

As I reflect on a month of more or less full time game development, I'm pretty happy with the results. 24 out of 30 days involved some form of creative output. I feel like I've learned a ton. I'm blessed to be able to devote my time and energy in this really slack fashion and still get solid gains. It's an extreme departure from when I was last serious about "making it" as an indie. I'm really hopeful for everything that's to come, and I can't wait to tackle December with just as much enthusiasm.

I've noticed, again, some things slipping through the cracks in favor of more active tasks. Particularly the academic study. Naturally, when self-directed, the last thing I want to do is tedious reading. It's much more fun to build Substance graphs, or make 3D models, or tool around with amateur techno. But it's important to work on establishing a well-rounded mental overview of what it is that I'm trying to do here, which is make a great videogame. To that end, I'm going to highlight the stuff that's sorta dragged its way along in November:

Let's just see what the morning brings.

Completed today:

Next day's plan:

Home · Previous · Next