@thomastc@mastodon.gamedev.place avatar

thomastc

@thomastc@mastodon.gamedev.place

Making games under the name Frozen Fractal.

Currently working on Around The World (working title), a #roguelite game about navigation, exploration and discovery in the Age of Sail. #indiegamedev #gamedev #godot

This profile is from a federated server and may be incomplete. Browse more on the original instance.

lisyarus, to random
@lisyarus@mastodon.gamedev.place avatar

We got some serious T-pose infestation going on here

thomastc,
@thomastc@mastodon.gamedev.place avatar

@lisyarus I see you've got this down to a T.

lisyarus, to random
@lisyarus@mastodon.gamedev.place avatar

What a better way to spend a Friday evening than to watch my new devlog 🤩

A recap of how my village building game 🏠 project was doing in the past month:

https://youtu.be/LUZSpIadGQk

thomastc,
@thomastc@mastodon.gamedev.place avatar

@lisyarus What better way indeed. Great to see this taking shape! May I ask how long it takes you to make these videos, and what tools you use for that?

thomastc,
@thomastc@mastodon.gamedev.place avatar

@lisyarus Phew, that's a big time investment. I hope it pays off for you in terms of building an audience. And an accent is nothing to be ashamed of! It's perfectly understandable, and that's what matters.

psychicparrot42, (edited ) to random
@psychicparrot42@mastodon.gamedev.place avatar

Whenever I kick off a new game project, the first thing I do is play every other game like it until I lose all enthusiasm (because I know I'll never be able to compete with them as a no budget indie dev!) .. I then go make something else instead. 🤪

.. I'm kidding. Don't do this! Keep the faith. Make the thing. You got this! 🤣

thomastc,
@thomastc@mastodon.gamedev.place avatar

@psychicparrot42 Easy! Just make a game that's not like any other!

mcc, to random
@mcc@mastodon.social avatar

A thing I hate hate hate (but always happens) is when a company distributes "Sample Code" for their API, and you open it up, and what they did was make a series of "Helpful" wrapper classes for the API then write code using the wrapper classes. Now suddenly it isn't sample code for the API, it's sample code for the helper classes. You can't just paste the sample code into your own project, unless you copy the helper classes into every project, in which case why aren't the helper classes the API?

thomastc,
@thomastc@mastodon.gamedev.place avatar

@mcc Sounds like Conway's Law in action. Sample code was written by a different team.

mcc, to random
@mcc@mastodon.social avatar

I thiiiiink that all this email actually means is "Find My Device will now include bluetooth devices at their location last seen by an Android phone, which means that if your phone is disconnected from the Internet but Bluetooth is on then Find My Device can still find it if another Android device passes nearby (unless you disable this feature)".

But uhhhh wow Google used some pretty alarming language to describe it

thomastc,
@thomastc@mastodon.gamedev.place avatar

@mcc Also, "not available to Google" is misleading: I could see the location of my device on a map that was hosted on a google.com domain before I turned this sketchy feature off (or at least I hope I did - it was not exactly clear).

aeva, to random
@aeva@mastodon.gamedev.place avatar

I added some lights to the splat renderer. The lighting is ray traced on the CPU and the colors are uploaded as new vertex colors for rendering.

The program is currently single threaded (I'm planning on moving it into a thread pool later), and the ray tracing loop is time constrained to ensure that the frame is always presented on time. If I were to raise the splat count further, the convergence time on the lighting and shadows would become more noticeable.

A hollowed out sphere with holes on opposite sides is seen rotating. Near each hole is a sphere to create interesting shadows within the hollow sphere. There are two moving lights above the object, one is a blue light and the other is an orange light. The lights cast hard shadows upon the rotating model.

thomastc,
@thomastc@mastodon.gamedev.place avatar

@aeva Very cool! I've been thinking about using such a rendering technique in my game (mostly top-down view), to achieve a painterly effect. Probably won't happen because of time constraints, but it's fun to think about.

thomastc,
@thomastc@mastodon.gamedev.place avatar

@aeva I was thinking about using point meshes instead of random raycast to make authoring easier, and use a geometry shader to generate the splats/brush strokes. The trouble is that the splat density needs to decrease smoothly as distance increases, and I'm not sure how to make that look good. (The other trouble is that Godot doesn't support geometry shaders, but that can be worked around at the cost of more CPU work.)

thomastc,
@thomastc@mastodon.gamedev.place avatar

@aeva That went way over my head; I'm pretty clueless about how GPUs work. In fact I never even used a geometry shader at all.

It does seem to me that the article draws a pretty general conclusion from only one microbenchmark. Also it's from 2015 (that's like 4 years ago, right?) and was not using recent hardware even at the time. Is it still true for modern GPUs?

thomastc,
@thomastc@mastodon.gamedev.place avatar

@aeva Yeah, instancing would work, and is supported by Godot too. Mesh shaders are entirely new to me, will read up on them some day. Thank you for enlightening me!

djlink, to random
@djlink@mastodon.gamedev.place avatar

I’ve haven’t used Google search as main for years, but since yesterday DuckduckGo was down most of the day I had to use it. it’s surprisingly bad now, like I know DDG has improved over the years but G also went down in quality. And the generated “ai summaries” are crap lol.

thomastc,
@thomastc@mastodon.gamedev.place avatar

@djlink Ah, so the DDG outage was not just me. I took the opportunity to try Kagi instead. It worked nicely and without cruft.

mark, to random
@mark@mastodon.fixermark.com avatar

We all know that this new Windows feature is a concern, but we also all know it's going to be hugely popular right?

Because the flip-side of the coin for "domestic abuser surveillance" is parental surveillance. Parents trying to figure out how to raise their kids safely in the digital age will gobble up the ability to check on what their young ones are doing online when they're not around.

thomastc,
@thomastc@mastodon.gamedev.place avatar

@mark Do kids these days even use Windows anymore? I'd guess it's almost entirely mobiles.

sinbad, to random
@sinbad@mastodon.gamedev.place avatar

There is a constant fight between factions that want the Internet to be different things. Faction 1 wants a giant library of free knowledge available to all. Faction 2 wants a crowd sourced DB they can slowly fence off, then sell everything that’s not nailed down to the highest bidder (advertisers/LLM magic bean sellers)

A lot of Faction 2 pretended to be in Faction 1 until the heel turn. They can all bite me. Yes you, Stack Overflow. Tw4ts, as we used to say on the open Internet

thomastc,
@thomastc@mastodon.gamedev.place avatar

@sinbad What did SO do? hashtag outoftheloop

thomastc, to gamedev
@thomastc@mastodon.gamedev.place avatar

Didn't get enough sleep to do coding, so I'm switching #gamedev hats and started working on some art using #blender3d, just to see how long it will take me. Here's a #sailing ship, a carrack to be precise, made in about 2 hours.
Edit: any feedback is very welcome!

thomastc,
@thomastc@mastodon.gamedev.place avatar

I think this is starting to look passingly like a ship to the casual observer. There's more that can be done using texturing, but I don't think I'll let the camera get this close – I'd need to add all the rigging and on-deck greebles, not to mention actual sailors, to make it look nice up close. Ain't nobody got time for that!
#gamedev #blender3d

thomastc,
@thomastc@mastodon.gamedev.place avatar

@lisyarus Thanks, I'll do that!

aeva, to NixOS
@aeva@mastodon.gamedev.place avatar

I don't actually have time today to work on any side projects, but I thought I'd run through the basic setup steps for MonoGame aaaand

./bin/Debug/net6.0/MyGame
bash: ./bin/Debug/net6.0/MyGame: cannot execute: required file not found

... which required file ._. ???

I think this sort of thing means it tried to dynamically link something and failed. I run into this whenever I try to run loose builds of Linux games on , but idk what to do about it.

thomastc,
@thomastc@mastodon.gamedev.place avatar

@aeva @jpab Fwiw, I don't think running games inside Docker or Podman is trivial either.

aras, to random
@aras@mastodon.gamedev.place avatar

Yesterday was full of gaussian splatting rendering artifacts.

image/jpeg

thomastc,
@thomastc@mastodon.gamedev.place avatar

@aras Also some awfully bland colour grading.

aeva, to random
@aeva@mastodon.gamedev.place avatar

you ever think about how humans are totally blind to the color alpha but haven't questioned why we reserve a color channel for it anyway

thomastc,
@thomastc@mastodon.gamedev.place avatar

@aeva Most monitors don't show it either, except those in some sci-fi movies.

aras, to Playdate
@aras@mastodon.gamedev.place avatar

"The Playdate Story: What Was it Like to Make Handheld Video Game System Hardware?" GDC talk by @cabel is illuminating and very entertaining. (free on GDC vault!) https://gdcvault.com/play/1034707/The-Playdate-Story-What-Was

thomastc,
@thomastc@mastodon.gamedev.place avatar

@aras Totally! My favourite bit was about the scammer but all of it was great. @cabel Any updates on the missing pallets btw?

thomastc, to godot
@thomastc@mastodon.gamedev.place avatar

New blog post, about floating point precision and how I implemented an ECS in #godot!
https://frozenfractal.com/blog/2024/4/11/around-the-world-14-floating-the-origin/
#gamedev #godotengine

thomastc,
@thomastc@mastodon.gamedev.place avatar

@mbr Aye, that is also a possibility. I think Minecraft does everything in chunk-local coordinates, for instance. But it's a bigger hammer than I need; doubles serve me fine 🙂

thomastc, to StarTrek
@thomastc@mastodon.gamedev.place avatar

The most unrealistic part of #startrek is that all engineers always know exactly how long a task will take, and they are always exactly right.

thomastc, to gamedev
@thomastc@mastodon.gamedev.place avatar

I'm refactoring the game to be ECS-based. The systems are purely event-driven; there is no Update() method, but only an Update event that they may subscribe to. Am I crazy to do it this way?

thomastc,
@thomastc@mastodon.gamedev.place avatar

@lisyarus Interesting idea! I would need to tag events that come from an external source, to differentiate them from events generated (directly or indirectly) by systems themselves. For example, I also have ComponentAdded<C> and ComponentRemoved<C> events, which turn out to be great for decoupling.

  • All
  • Subscribed
  • Moderated
  • Favorites
  • anitta
  • InstantRegret
  • mdbf
  • ngwrru68w68
  • magazineikmin
  • thenastyranch
  • rosin
  • khanakhh
  • osvaldo12
  • Youngstown
  • slotface
  • Durango
  • kavyap
  • DreamBathrooms
  • JUstTest
  • tacticalgear
  • ethstaker
  • provamag3
  • cisconetworking
  • tester
  • GTA5RPClips
  • cubers
  • everett
  • modclub
  • megavids
  • normalnudes
  • Leos
  • lostlight
  • All magazines