One of my favorite gamedev war stories: After launching my first game on Steam, some players experienced platforms moving in slow motion. It was impossible for me to reproduce the issue. It was only after enough players reported the bug that I realized: They were all in Europe.
REMINDER
When you parse a float, it takes into account the language on the computer you're using.
Some cultures use a period for decimal points, while some use commas.
More than once have I gotten game breaking bugs due to forgetting about this.
Encountered a physics bug where the penguin torso lags behind the rest of the body... but it makes for some nice fake motion blur. Maybe I should keep it?
#gamedev
#GodotEngine
App devs, could you please not do this? I'm so sick and tired of this.
I understand doing this for usernames, but this is my NAME, ffs. It's for display, not logging in.
Gamedev audio tip: If you need varying intensities for a percussion, don't change the volume - change the playback start time! If you start later in the clip, you skip the sharp attack, leaving just the lower rumbling.
All the moving platforms in that game were scripted with a custom scripting language like this:
move x 3 1.125
wait 1.5
So when the C# game parsed these scripts in Europe, it interpreted the periods in the European way, so 1.125 seconds became 1125 seconds.
Physically-aware audio is incredibly important for immersive
#VR
experiences, but often overlooked. It can make the difference between interacting with shapes and interacting with a place.
#gamedev
#indiedev
#unity3d
#madewithunity
I did it! A completely vertex shader driven seagull effect! Using a Godot MultiMeshInstance3D, you can put a bunch of these in the sky, and it's just a single draw call!
#GodotEngine
#gamedev
VR should be just as fun to watch as it is to play! Trying out some new "adventure cam" tech, which chooses the best framings based on gameplay and environment contextual cues. What do you think? 🐧🎥
#gamedev
#indiedev
#screenshotsaturday
A difference between Godot and Unity which isn't immediately obvious but can have huge workflow impact:
In play mode, Unity *becomes* the editor for the running game, whereas Godot only *communicates* with the running game.
Let me elaborate...
#gamedev
#unity3d
#godotengine
Indie devs (especially ones with ADHD), often see any inability to work under a big umbrella. But different pre-burnout symptoms need different solutions. Here's how I deal with some common ones (🧵):
- negative thoughts
- mind is dull
- bored / unmotivated
- can't decide / start
Penguin sensori-motor system now achieves stable footing by coordinating with a basic vestibular system that detects center-of-mass!
This will be used to drive procedural body animations in
#VR
. :D
#gamedev
#unity3d
#madewithunity
Did you know you can skew objects in Unity without skinned meshes or shaders? All it takes is a hierarchy of 3 transforms! (2 transforms for 2D skewing).
#Unity3D
#UnityTips
#gamedev
I did it! A completely vertex shader driven seagull effect! Using a Godot MultiMeshInstance3D, you can put a bunch of these in the sky, and it's just a single draw call!
#GodotEngine
#gamedev
Characters can now point hands or any part of held objects at a target, while respecting object grip affordances and body limits.
#GodotEngine
#gamedev
Watching this was surreal - it was pretty much identical to a meeting at Owlchemy post-Google-acquisition. The Google representative kept saying how strange it was that we would make games on the side. He backed off when he saw us reaching for the pitchforks.
with all the microsoft news recently i just keep thinking back to this bit in episode 27 of double fine psychodyssey (the excellent making-of documentary for psychonauts 2) where matt booty tries to reassure the team post-acquisition and in the process says all the wrong things
Procedural animation is super cool - you can use simple math to add dynamic "breathing" effects on top of existing animations. This is more scalable than baked animations, and more versatile than blending approaches.
#gamedev
#indiedev
#madewithunity
Tip: You close your eyes faster than you open them when you blink. Factor this into your blink animations to make them look more snappy and natural.
#gamedev
Character facial expression system is mostly done now. Added support for blinking, and different eyebrows. And juiced up the animations quite a bit.
#GodotEngine
#gamedev
Made a Godot shader for lines and trails!
The CPU only supplies points, widths and colors, and the GPU handles all the rotation in a vertex shader! The result is a flat ribbon that looks thicc from every angle. :)
#GodotEngine
#gamedev
If this post gets 100 likes, I will add this
@godotengine
plushie to the penguin game as a collectible. 500 likes and I will make it SQUEAK.
🐧🫶🤖
Go buy this plush and support open source, y'all!
The world may not be ready for its cuteness, but here it is:
Help yourself to a cuddly coding companion ✨, and help the
@godotfoundation
at the same time!
All revenue made on our end will directly benefit the Godot Development Fund.
Godot does a full compile and puts me into VR on Quest Link in 2 seconds.
It builds and pushes a build onto the Quest 2 and starts remote debug in 15-20 seconds.
Full build is 70 MB.
I know this is a tiny project so far, but damn. Nice.
#GodotEngine
#gamedev
Our penguin NPCs use the same physics-based rig as the player's VR avatar! This provides a solid foundation for making procedural, hand-authored, or motion-cap animations. Here are some behaviours made by just moving my mouse around:
#gamedev
#VR
#madewithunity
Made a Godot tool script which gives the penguin another hat every time you look at it. IN EDITOR!
What's extra awesome is that the hats don't get saved with the scene, and don't show up in the scene tree - they're purely aesthetic!
#gamedev
#GodotEngine
If you've ever experienced Godot's rotation gizmo acting oddly/inconsistently, I made a PR to fix that. Give it a spin (badum tss), give feedback, etc. 🙏
To speed up iteration, we made tech to procedurally wrap straight window meshes of any size around our igloos, but it could technically work on... any... mesh? 🤔🐟
#gamedev
#unity3d
#indiedev
I was asked by some Godot users / team member to show my workflow using realtime-editing in Unity, but I thought it might be useful viewing for others, so here's a mini video series! I also delve into the Godot side of things and give my feedback.
#gamedev
#godotengine
#unity3d
Easy way to find the normal (GREEN) of a big parametric surface:
- Get the height at a point (WHITE)
- Get the height a little to the right (RED)
- Get the height a little forward (BLUE)
- Calculate cross product. BOOM!
#GodotEngine
#gamedev
Seeing your feet in VR is cool, but it's even cooler to USE them! I made several penguin foot mechanics in this experiment, using
@htcvive
's newly released, self-tracking VIVE Ultimate Trackers. Check it out! 🐧
#VR
#gamedev
#madewithunity
Hey y'all, I uploaded my lines & trails addon for
@godotengine
on GitHub! It's not perfect, but it's usable. I won't be "supporting" it, but I'll update it over the course of my own project. You can find it here:
#GodotEngine
#gamedev
Last year I made a post about Godot vs. Unity runtime editing. Having now spent much more time in Godot, I'd like to give y'all an update.
TLDR: Godot's runtime editing features are much more powerful than they initially appear.
Thread below: 🧵👇
#GodotEngine
#gamedev
I was asked by some Godot users / team member to show my workflow using realtime-editing in Unity, but I thought it might be useful viewing for others, so here's a mini video series! I also delve into the Godot side of things and give my feedback.
#gamedev
#godotengine
#unity3d
Made a Godot utility script for calculating projectile launch parameters to hit a target. Supports different arcs, gravities, drag, and dead reckoning. Will be super useful for the penguins! 🐧
#gamedev
#GodotEngine
I think I can finally call flag tech done! Made the whole flag line blow in the wind, and made a tool script to author the cables and distribute the flags with in-editor preview of all the effects. Ready to move on! 😅
#gamedev
#GodotEngine
Not only can the Godot editor to make changes to the running game, the reverse is true as well: the game can tell the editor what to do! 😮 e.g. Whenever I select an NPC in the game, the editor opens the corresponding NPC resource in the inspector.
Made a flap-in-the-wind fabric shader, with tweakable wind and fabric parameters. Had a lot of fun figuring out all the little details, and I'm super pleased with the result.
#GodotEngine
#gamedev
@bacon_hakan
It's a real thing, and it applies to many culture-sensitive string operations, like ToString, ToUpper, ToLower, etc. You just have to be aware of this, and use culture-invariant versions of methods whenever possible.
Godot editor scripting is insane. In just a few minutes with no prior knowledge, I made a code zoom slider, and immediately started using it on the code I just made it with. 🤯
#GodotEngine
Procedural footing tech now applies some angular acceleration to the feet during lift and descent. It's fun using physics to mimic animation principles that were meant to mimic/exaggerate physics.
#gamedev
#GodotEngine
Made a character body motor system which lets me combine complex layers of procedural animations. No blend trees, no manual animating - everything's based on numbers and rules! I have a feeling I'm gonna get crazy mileage outta this system! 🐧
#gamedev
#GodotEngine
Making a terrain editor turned out to be overkill for my needs, so I bit the bullet and learned Blender Geometry Nodes. Got this up and running within a day. Still need to get more proficient, but I feel like I unlocked a gamedev superpower!
#gamedev
#indiedev
#blender
I geeked out when I first realized that a point's velocity on a spinning object is just the cross product between the angular velocity and the point offset. WAY more elegant than I expected.
Then I found out Unity already has a built-in func for this. 😅
#gamedev
#unity3d
Finding new things you can do with shaders every day. Here I edit the model matrix in the flag shader so it maintains a consistent size and stays droopy. This way, I can stretch and skew the parent (line of flags) without distorting the individual flags!
#GodotEngine
#gamedev
I want to make a VR game where the player can really believe that they belong in the world. And I want the audience to believe it too. The NPCs can sit in chairs? So can you. You should never feel out of place like an alien visitor.
#gamedev
#GodotEngine
Modified my ice sheet Blender Geometry Nodes program and made a snow-capped mountain variant. Lots of tweakable parameters. Proud of myself for learning GeoNodes and making this, and super hyped to start making my game map!
Wish the Godot cameras worked more like Unity's, with togglable rendering and automatic prioritization? Just add this one script to your cameras:
#GodotEngine