Sign in

terrehbyte 🚃🔍

@terrehbyte.com
511 followers 1.7K following 511 posts

Game Programmer / Cosplayer / Hoyoverse Gamer 💻 Indie Game Prog + Instructor at @aieedu.bsky.social 💼 Prev. @ SJ, IGDA Seattle, Vextar, Litesprite 🕹️ Playing Genshin / ZZZ / Star Rail 📺 Watching Dooby3D / Hololive (🚃/🔍) 🌐 terrehbyte.com

PostsRepliesMedia
terrehbyte 🚃🔍 @terrehbyte.com · 06/09/2026
making an interactive vignette control that plays nice in-editor + uses the existing ColorRect color property was way simpler than I thought #Godot #GameDev
173
terrehbyte 🚃🔍 @terrehbyte.com · 05/07/2026
Reppin' my favorite as Zhu Yuan at #ZenlessZoneZeroAX #zzzero
Zhu Yuan selfie with ZZZ logo in background
000
terrehbyte 🚃🔍 @terrehbyte.com · 03/07/2026
ZZZ MY BELOVEDDD I AM HERE as Snap!! (w/ @hoshipichu.bsky.social) #ZenlessZoneZeroAX #zzzero
120
terrehbyte 🚃🔍 @terrehbyte.com · 02/07/2026
Snap and Evelyn still looking for Astra but got some free tea haha 🍵 (w/ @hoshipichu.bsky.social ) #SandronesTeaParty #GenshinLunaVIII #Cosplay
Photo w/ Arle, Snap, Evelyn (incognito 🥸), and Sandrone?!Selfie of Evelyn and Snap
120
terrehbyte 🚃🔍 @terrehbyte.com · 09/06/2026
AIE Seattle is hosting its 2026 Graduate Showcase next week: Wed, June 17th, from 4pm to 7pm PDT. Stop by when if/when you can to give feedback and share your expertise. Let me if I haven't already invited you if you're interested! (In-person only, unfortunately)
2026 AIE Graduate Showcase

Meet the team behind these student projects!

Pictured: A cute rancher, a creepy potato sack doll, and a hill swarmed by goats with angelic cows standing their ground at the top.
132
terrehbyte 🚃🔍 @terrehbyte.com · 15/03/2026
All that time in UE has really trained me to miss having an Arrow Component when working in Godot, so naturally I had to have one haha (I was trying to debug AI shoot direction...)
A screenshot of a mannequin with a blue debug arrow, indicating the direction they're looking in.
000
terrehbyte 🚃🔍 @terrehbyte.com · 17/01/2026
is it bad that I initially thought of tableau (i saw the four panels on second glance lol)
"tableau software" written to the right of a set of ➕ symbols in a circular fashion
010
terrehbyte 🚃🔍 @terrehbyte.com · 02/01/2026
Cute art! Reminded me of the metal upa from Steins;Gate.
A screenshot of a metal upa, a small round figurine obtained from a gachapon machine in the anime Steins;Gate.
240
terrehbyte 🚃🔍 @terrehbyte.com · 28/11/2025
HUUUUGE Congrats to the AIE grads who worked on License to Grill!! It just hit 50 Reviews and is still "Very Positive"! I'm immensely thankful of the team's support and proud of their work. Happy to see that one of our first capstone projects to hit Steam under our AIE account is doing well.
Screenshot of License to Grill's store page summary panel. A red circle is placed around its review score, indicating "Very Positive (50)" which is also written below as "50!! 🎉".
150
terrehbyte 🚃🔍 @terrehbyte.com · 28/11/2025
Feeling spoiled as always w/ having access to a Command Palette / "Search for a Command" thing ✨ I never really know where a setting lives (or care if it has moved) as long as I know roughly what it's called haha
Rider's Command Palette set to the "Actions" filter displaying a search query and result.

Query: "Show Virtual"
Result: " Show virtual space at the bottom of the file" set to ON
020
terrehbyte 🚃🔍 @terrehbyte.com · 17/11/2025
Not where I expected to find an answer on this, but so glad you're sharing this, thank you! Worked like a charm. It was also ridiculous that it had a big "NEW" badge that also didn't go away even if you tried searching something to remove its "newness".
A screenshot of the context menu, showing the big green "New" badge next to the "Search Image with Google Lens" entry.
110
terrehbyte 🚃🔍 @terrehbyte.com · 17/11/2025
Blinking is handled via a OneShot node which can re-trigger itself after being played once, allowing it to play every 2-10 seconds, which differs after each time it occurs. (random_delay was turned off in the prior clip)
A screenshot of the properties for AnimationNodeOneShot.

Of note are the final three properties under the "Auto Restart" section:
- autorestart (On)
- delay (2.0 seconds)
- random_delay (8.0 seconds)
020
terrehbyte 🚃🔍 @terrehbyte.com · 17/11/2025
Blinking is done by also additively animating the eyelid controls, allowing them to work with *most* of the facial expressions. This doesn't quite work with expressions that DO drive the eyelids, so they're excluded for now...
120
terrehbyte 🚃🔍 @terrehbyte.com · 17/11/2025
The animation tree now additively applies facial animations on top of bodily movement animations. Characters can switch between neutral, happy, and sad expressions. #GameDev #Godot
1245
terrehbyte 🚃🔍 @terrehbyte.com · 17/11/2025
Been busy these past few weeks but slow to post updates! Added a little gap to allow walking between the "shooting" and "target" portions of the range + integrated Godot's NavigationRegion3D. Characters can *optionally* use the NavigationAgent3D they have to navigate (or just run directly!)
Screenshot of the editor, visualizing the walkable space in blue/green colors. In this view, short orange walls gate off two discrete spaces joined by a small gap.
010
terrehbyte 🚃🔍 @terrehbyte.com · 16/11/2025
Finally threw together a dark theme for my gamedev blog to respect the viewer's color preferences! Decided to switch on a "data-theme" attribute applied to the <body> element. terrehbyte.com No override toggle yet. Working on web stuff hurts my soul...
A screenshot of my blog in dark theme! Major elements visible at a glance include: name (Terry Nguyen), "Recent Posts" header, a "Recent Project" header highlighting an "Undisclosed project", and featured commercial works.A screenshot of my blog in again but in the original light theme!

Major elements are the same as the dark theme: visible at a glance include: name (Terry Nguyen), "Recent Posts" header, a "Recent Project" header highlighting an "Undisclosed project", and featured commercial works.
170
terrehbyte 🚃🔍 @terrehbyte.com · 11/11/2025
Went to Little Ting's Dumplings a while back and had loved every bite~ Hope you get some good eats (and rest) for your birthday!!
A picture of steamed dumplings in a container. Three spoons are placed on top, ready for serving.
110
terrehbyte 🚃🔍 @terrehbyte.com · 19/10/2025
"Manni" can now run around after taking damage and jumping on each hit. It's now using the same character movement logic, but is driven by its own controller + reacts to game events like damage. (pls excuse the jank hitboxes; 2lazy2tweak) #ScreenshotSaturday #Godot #GameDev
0202
terrehbyte 🚃🔍 @terrehbyte.com · 19/10/2025
Friendly reminder to always be hittin' CTRL+S since you never know when your GPU driver will crash out haha Popping in and out of play mode in Godot always seems to invite some trouble (but I did save beforehand 👍👍) #GameDev #Godot
Faulting application name godot: godot.windows.editor.x86_64.exe, version: 4.5.0.0, time stmap: 0x68ec38cf
Faulting module: nvoglv64.dll, version: 32.0.15.7270, time stmap: 0x67c621d2
151
terrehbyte 🚃🔍 @terrehbyte.com · 17/10/2025
I thought the same n' looked for a "current_playback_ratio"-esque thing, but didn't see it at a glance. I am changing the adv exp base node which complicates things... but your reply got me thinking on a "common anim utils" node that can be resolved at design/run-time by different nodes. Ty! 💖
Revised graph, showing only a single transition between Jump and FloatingThe Advance expression now reads "resolve_anim_player().get_current_animation_ratio() >= 1.0 || grounded" which can be resolved by both a script on the AnimationTree node and by other nodes that are set as a Advance Expression Base Node as long as they both implement "resolve_anim_player()".
100
terrehbyte 🚃🔍 @terrehbyte.com · 17/10/2025
Surprised to find that Godot's Animation State Machines don't allow for more than one transition from A to B, so I'm resorting to a dummy node that can be transitioned to immediately
Jump allows for two transitions: one to Floating, which automatically occurs at the end of the animation, and another to JumpInterrupt, which is based on a specific condition.
220
terrehbyte 🚃🔍 @terrehbyte.com · 03/10/2025
note that the BASIC CUBE is NOT a nanite mesh, so nanite tessellation won't work on it. export it out and bring it back in with nanite if you must try it out on it (or modify the engine cube... but that will affect other projects) (also TIL that the default cube is 8 tris per side, not 2 tris lol)
A wireframe view of the basic cube, showing 8 triangles per face.
010
terrehbyte 🚃🔍 @terrehbyte.com · 03/10/2025
On the Material: Enable Tessellation and the "Displacement" input on the main material node should appear, which is able to displace the virtual geometry created by Nanite. World Position Offset (WPO) appears to only operate on the geometry as imported.
A Texture Object Parameter is wired in as the T2d input on a WorldAlignedTexture node. The XYZ texture output from that is wired into the main material node's Displacement input.
120
terrehbyte 🚃🔍 @terrehbyte.com · 03/10/2025
Toying with Nanite Tessellation in UE5.4.4. Definitely a lil' more work to enable than the "Nanite for Artists" talk would had me thinking haha 😅 Always fun to get student questions on systems I'm not super familiar with. Lots of exploration/suffering to be had!
A comparison of a regular cube (left) and a Nanite Tessellated Cube with a noise-based displacement (right). The right cube looks super bumpy.
130
terrehbyte 🚃🔍 @terrehbyte.com · 22/09/2025
it's still sept 21 on my end so it still counts /s
A screenshot indicating that the post was made on September 21, 2025 at 11:42 PM
000
terrehbyte 🚃🔍 @terrehbyte.com · 21/09/2025
The show felt so short but it was at least packed fuuuuuuull of fun moments! The girls, the stage, the songs n' singing were definitely next level (as expected) for a big milestone like this. Looking forward to seeing what these three continue to be up to in the future~! 💜❤️🧡
Ina - Thank you for an unforgettable 5 years! I can't wait for even more amazing, fun things in the future! Buckle in!! It's going to be an exciting ride up ahead!! Go NEXT! (takodachi drawing) Ina.

Calli - Thanks for 5 years together, everybone! Are you ready for more? It's already been the best journey a reaper could ask for, but let's run toward the future we wanna see from here. And, love to my Myth girls! (deadbeat skull drawing integrated into the 'C' in) Calliope Mori!

Kiara - Kikkeriki💛! These 5 years were super crazy with many ups & downs; but... together we, the fans and Myth achieved so much. Every moment together will forever stay deep in my heart, and there's still place for more! ✨DANKESCHON✨
000
terrehbyte 🚃🔍 @terrehbyte.com · 21/09/2025
Aaaaand the awards are as follows: Takanashi Kiara - Most Meals Cooked Ninomae Ina'nis - Most Time Spent on the Floor Award Mori Calliope - Best Worst Luck Award
"Most Meals Cooked Award ~Takanashi Kiara~""Most Time Spent on the Floor Award ~Ninomae Ina'nis~""Best Worst Luck Award ~Mori Calliope~"
110
terrehbyte 🚃🔍 @terrehbyte.com · 21/09/2025
It's time for THE SONG!! Fortune Spinner! It's so fun to listennn (but also gets me feelin' things cuz last year's was fun too...)
Ina, Calli, and Kiara standing together under the spotlight.

Caption reads: "I got to try my luck, I'm spinning fate"
100
terrehbyte 🚃🔍 @terrehbyte.com · 21/09/2025
FIVE YEARS of TAKAMORIIII BABYYYY
Takanashi Kiara and Calliope Mori dancing on stage; captions read "3,2,1, Go!"
121
terrehbyte 🚃🔍 @terrehbyte.com · 21/09/2025
My girlies! Five years of Myth!! 🥹 #MYTH5YEAR (and #MYTH5EVER!!) I miss seeing Goobah and Ameeee (my oshiii 🔎) on stage too... but I love n' support Wawa, Calli, and Ina too! ❤️🧡💜💙💛 #Hololive
A screenshot of the Hololive English Myth 5th Anniv featuring Takanashi Kiara, Calliope Mori, and Ninomae Ina'nis pictured from left to right on a golden yellow stage with glitz and chandeliers.
140
terrehbyte 🚃🔍 @terrehbyte.com · 15/09/2025
This took longer than I expected since I codified some assumptions that held true for my "can_step_check" function, but had extra stuff that didn't apply to this. I ended up writing a new move test that accepts multiple poses like before, but clips movements based on obstacles along the way.
A diagram showing a player jumping with two checks performed:

The "Bad Check" ends in the box, suggesting that there is not a clear path to moving forward and over the box.

The "New Check" adjusts to obstacles, stopping short of the box obstacle but attempts to go up by the same amount after traveling a shorter distance initially.
100
terrehbyte 🚃🔍 @terrehbyte.com · 15/09/2025
An "unsmoothed" version of it is now implemented on my character, allowing them to jump onto things that are within a configurable height delta while mid-air. It's limited to phys objects for now, but that's configurable. The threshold is *really* high here for exaggeration + debugging.
100
terrehbyte 🚃🔍 @terrehbyte.com · 15/09/2025
Spent this weekend rewriting my prototype "mounting" system into something more consistent. It was originally like a "REALLY BIG STEP" that could only occur on phys objects (while jumping) but wasn't reliable. I originally saw it in HL2 while testing other stuff.. #ScreenshotSaturday #GodotEngine
2110
terrehbyte 🚃🔍 @terrehbyte.com · 14/09/2025
Bluesky bookmarks are indeed tallied up! It's not displayed next to the actual icon, but is shown when directly viewing a post (just not from the feed). I was doing both because some pay close attention to their metrics, but I think I can now use like and save for different things. ❤️
10 reposts, 45 likes, 1 save
010
terrehbyte 🚃🔍 @terrehbyte.com · 13/09/2025
fwiw it does focus on Trailblazer Eidolons, which I do use! My Harmony MC and Remembrance MC for my Firefly and THerta teams are a huge help, so I appreciate that they've got a place on my teams, though you are limited to one MC...
How the Trailblazer's Eidolons work

The Trailblazer, your protagonist, is the only character to earn Eidolons through gameplay. They also have more Eidolons than other characters, since you can unlock additional Paths that let you specialize in different roles on a team. The Trailblazer also has six Eidolons for each Path, so collecting them all will take time. Luckily, there are lots of different ways to get them.

<Screenshot of the Herta Space Station. Destruction Trailblazer is standing in front of Wen Shiqi, the Internal Purchase Officer>

How to get Trailblazer Eidolons

The Trailblazer unlocks new Eidolons by finding activation materials called "Shadows" for each Path they can use. These will come your way through a number of different methods. For example, on Shadow of Destruction, you'll get one as a reward for reaching higher Trailblaze levels. Other Eidolons are also earned from specific missions as you play through the story.

Some Trailblazer Eidolons, however, need to be sought out in the world. Specific vendors, like the Internal Purchase Officer on the Herta Space Station, sell certain materials. To see where you can find the material needed for a Path, open the Trailblazer's Eidolon screen, tap on the Eidolon you want, then tap on the required Shadow on the right. This will display sources for that Shadow.
020
terrehbyte 🚃🔍 @terrehbyte.com · 13/09/2025
Google hitting me with the secret tips on "WINNING in STAR RAIL": getting more EIDOLONS lol
Notification from Google Play Store: "Winning in Honkai: Star Rail. All you need to know."How to get Eidolons in Honkai: Star Rail

There are a lot of different ways to power up your characters in Honkai: Star Rail. Levelling up and ascending are the most obvious methods, but you can also boost your Light Cones and characters' Traces.

Then there are Eidolons, which improve your characters and can change how they play. However unlocking them can be difficult, as they require you to engage with the game's gacha mechanics. Here's everything you need to know about Eidolons.
120
terrehbyte 🚃🔍 @terrehbyte.com · 01/09/2025
Good-bye cosplans, hello Godot again! Back at it~ 1. Crosshair changes to red under enemies 2. Enemies have limbs 3. Hit markers (RED for crits) 4. Hit sounds (different for crits) 5. Automatic blaster 6. Weapon shake (cuz I ain't an animator) #GameDev #Godot #ScreenshotSaturday (but Sunday oops)
0142
terrehbyte 🚃🔍 @terrehbyte.com · 07/08/2025
I knew keeping that old mouse for spare parts would come in handy some day 😋 (broke the little stem that joins the scrollwheel to the encoder AGAIN so I took it from an old one)
110
terrehbyte 🚃🔍 @terrehbyte.com · 07/08/2025
E.Y.E.: Divine Cybermancy (keep an eye on gamescom next week...?)
Text: E.Y.E. Divine Cybermancy

A vertical cover photo of the game. The logo text is in yellow, superimposed on top of people dressed in sci-fi garb with lots of overlapping layers and golden adornments.
000
terrehbyte 🚃🔍 @terrehbyte.com · 10/06/2025
My integrated terminal setup seems to break every so often, but the new "Reworked 2025" terminal engine seems to play nicely with the latest recommendation from MSYS2. Passing it the script with the appropriate CLI switches seems to start a working session that integrates with the IDE. ✌️
Screenshot of the Terminal settings panel in JetBrains rider.

The key part is the "Application Settings" section with "Shell path" set to the msys2_shell script. It reads as follows:

C:\msys64\msys2_shell.cmd -defterm -here -no-start -msys2
000
terrehbyte 🚃🔍 @terrehbyte.com · 01/06/2025
Finally got around to listing a few more notable projects on my website from the past few years! Proud to see my hands haven't been idle. But still no blog post... 👉👈
Godot Engine Draft PR#101479, Add a method to get (global space) AABBs of collision shapes (GitHub)
UATerry, UAT locator and command builder for Unreal Engine projects (GitHub)
terry_motor.gd, Custom kinematic motor reimplementation for Godot 4 with expanded featureset
MagickaMod, Unofficial patch fixing crash/desync issues for Magicka 1
GDEase, Directly drawing to Godot Canvas surfaces for UI + functional implementation of easing curves (GitHub)
EVATimer, Toy project recreating the battery timer screen from Evangelion. Made with Godot 4. (GitHub)
EarTrumpet (Fork), Implemented device hiding logic and UI in WPF app (GitHub)
010
terrehbyte 🚃🔍 @terrehbyte.com · 08/05/2025
TWO TICKETS TO THE TRAIN SHOOOOOOW #Dooby3D
Upcoming Tickets. SAT JUL 05 2025 - 8:00 PM. Virtual Vacation 2025. The United Theater on Broadway, Los Angeles, CA. 2 Tickets.
110
terrehbyte 🚃🔍 @terrehbyte.com · 28/04/2025
Double-checked: my deck is still safe n' sound in its case. Thanks for the reminder! 👍
A photo of a Steam Deck in a third-party case, open, displaying the device. A wrinkled cleaning cloth sits on top; it reads: "Steam Deck™️".
010
terrehbyte 🚃🔍 @terrehbyte.com · 28/04/2025
Not a huge Fall Guys / Bangboo Bash fan but figured it'd be easier to max out rank sooner than later! Getting those last few Ether Carrot points got my hands sweatyyy 💦 I got a lot better at Last Boo Standing than I would've liked (even though I like playing Race more) #ZenlessZoneZero
Screenshot of NA Server Ranking: Ether Carrot 512 - Entire Server Top 3%A green checkmark is placed next to the Event's "Exclusive Rewards" menu indicating that all rewards have been obtained.
010
terrehbyte 🚃🔍 @terrehbyte.com · 09/03/2025
Tyty~ I have toyed around w/ standing on a box and blasting off on it, riding it into the void. This fog is also the Silent Hill-like depth fog, which is relatively cheap to render, but Godot does support volumetric fog in its Environment by default. I've included a brief comparison:
110
terrehbyte 🚃🔍 @terrehbyte.com · 09/03/2025
The Star Rod does shoot, btw. ✨ Each pewpew applies damage if the collider implements the damage interface, otherwise it applies a small impulse if it's just a simple RigidBody3D object. #Godot #GameDev #ScreenshotSaturday
0124
terrehbyte 🚃🔍 @terrehbyte.com · 09/03/2025
I used to disable or at least tweak my weapon FOV when I played TF2, so made sure to make that an option on my player script.
110
terrehbyte 🚃🔍 @terrehbyte.com · 09/03/2025
Weapon viewmodel now uses a custom shader to bump its depth value to try to minimize clipping into the game environment. This keeps everything in a single camera (no addl' viewports) so other screen-space stuff should apply just fine as usual~ #Godot #GameDev #ScreenshotSaturday
2305
terrehbyte 🚃🔍 @terrehbyte.com · 09/03/2025
My "fake physics" was re-written to be more consistent and work with objects that use "continuous_cd". We can push, be pushed, or both when colliding with rigidbodies. #Godot #GameDev #ScreenshotSaturday
1145
terrehbyte 🚃🔍 @terrehbyte.com · 09/03/2025
The motor now switches to "mid-air" when its vertical velocity is too high, allowing you to launch yourself instead of sticking to the platform with infinite forces. This is also *relative* to the platform; no launching off of elevators moving as fast you. #Godot #GameDev #ScreenshotSaturday
2276