@lisyarus@mastodon.gamedev.place
@lisyarus@mastodon.gamedev.place avatar

lisyarus

@lisyarus@mastodon.gamedev.place

He/him

I live in a totalitarian state, teach computer graphics, and make videogames

Check out my cozy traffic simulator: https://store.steampowered.com/app/2403100/Costa_Verde_Transport_Department/

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

eniko, to gamedev
@eniko@peoplemaking.games avatar

The first episode of Coding History: 3D from Mode7 to DOOM is live now! It explains how to rotate points in 2D space and why the rotation formula so often used in game development is the way it is: https://www.youtube.com/watch?v=JC5IMfK7Yfw

Please go check it out and boost this post if you want to support an educational video series about old school 80s and 90s 3D 🙏

lisyarus,
@lisyarus@mastodon.gamedev.place avatar

@eniko Yay!

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


There's a trick I've been using when a shiny new project idea (e.g. a game) sticks in my head and I can't get rid of it: immediately start writing a thorough design document & development plan for it. This achieves several goals:

  1. You won't fear that you'll forget the cool stuff you've come up with, since it's now written down
jonikorpi, to random
@jonikorpi@mastodon.gamedev.place avatar

This morning I learned windows can randomly pop and fracture on their own. Some kind of heat expansion effect. Makes for pretty patterns, if nothing else.

lisyarus,
@lisyarus@mastodon.gamedev.place avatar

@jonikorpi Maybe there's some specific arrangement of windows on neighbouring buildings that reflect light concentrated on specific parts of your window?

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

Managed to build an Android app from scratch, avoiding things like gradle and maven, yay. It even has OpenGL and hides the system bars :3

Now to cross-compile my C++ engine for android, yikes. At least they have a cmake toolchain for that.

lisyarus,
@lisyarus@mastodon.gamedev.place avatar

@fell I think I'll write a blog post when I'm completely done, but to get to this point I did 1) install the android sdkmanager command-line utility, and use it to download ndk, sdk and android-platform packages, and 2) follow this article with a ton of fixes due to a lot of API changes: https://authmane512.medium.com/how-to-build-an-apk-from-command-line-without-ide-7260e1e22676

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

Ok I've got the meshing system performance totally juiced and I fixed a bunch of bugs and now my models all load in a similar time frame to the old renderer.

The results range from adequate to meh though, because the heuristic for guessing the ideal meshing parameters ends up falling to produce a consistent vertex density, so it'll range wildly from a fine mesh of micro triangles to generating far too few triangles.

lisyarus,
@lisyarus@mastodon.gamedev.place avatar

@TomF @aeva Huh I didn't know quantum electromechanics is a thing

lisyarus,
@lisyarus@mastodon.gamedev.place avatar

@aeva @TomF A joke about QEM looking similar to QED which stands for quantum electrodynamics

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

Barely finished it in time: Tower Offense, a game where you defend against attacking towers! Made in 48 hours for GMTK Jam.

https://lisyarus.itch.io/tower-offense

j_bertolotti, to random
@j_bertolotti@mathstodon.xyz avatar

Just a reminder of how dangerous trusting machine learning to reconstruct an image is.
(from https://doi.org/10.1038/s41592-020-01048-5)

lisyarus,
@lisyarus@mastodon.gamedev.place avatar

@j_bertolotti Train AI to reconstruct microscopic images based on existing data
@
Never make any new discoveries because they weren't in the training set

Sounds like a solid idea!

eniko, to random
@eniko@peoplemaking.games avatar

Imagine being the type of person who looks at threads (which doesn't even have a way to see only posts from accounts you follow) and then calls it "the most fun, most interesting product of the year." Just an utterly bizarre response

lisyarus,
@lisyarus@mastodon.gamedev.place avatar

@eniko My gf told me about instagram-only folks who discovered threads and be like "wow all people write stuff at the same place it's like a global chat room it's so unusual and new"

Apparently a lot of people still don't know anything about social networks even today

lisyarus,
@lisyarus@mastodon.gamedev.place avatar

@eniko Ahem well good bless him I guess

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

When I first implemented skeletal animations, I got really confused by all the transformations and coordinate systems; even more so when working with the glTF format.

Now I've finally finished an article with all the gory details: https://lisyarus.github.io/blog/graphics/2023/07/03/gltf-animation.html

video/mp4

oblomov, to random
@oblomov@sociale.network avatar

cc @eniko

lisyarus,
@lisyarus@mastodon.gamedev.place avatar

@oblomov @eniko Wait what did I miss

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

Doing some very crude by-hand profiling. As I expected, forests are the most problematic thing. Hope that slapping a single low-LOD model for faraway trees will fix that :)

#indiedev #gamedev

lisyarus,
@lisyarus@mastodon.gamedev.place avatar

@TomF It's poly count. Trees are 2 draw calls right now, one per each type :)

lisyarus,
@lisyarus@mastodon.gamedev.place avatar

@fell @TomF No, just alpha testing.

lisyarus,
@lisyarus@mastodon.gamedev.place avatar

@fell @TomF The vertex shader is as simple as it gets. Frustum calling won't help in worst cases which are unfortunately fairly typical in my case.

I've already tested a low-LOD model instead and it improves things significantly, I only need to implement proper distance-based LOD selection.

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

Btw, #graphics folks, there's this thing when you render transparent textures with mipmapping and they appear to have black outlines due to RGB mixing with black transparent pixels. I know people flood-fill the transparent areas with neighbouring non-transparent color or smth like that, how is this operation called? How do I do it in e.g. GIMP?

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

Sunrise + morning fog + depth of field look pretty nice together :)

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

Yay, it works! So instead of just mixing with the previous frame, I'm mixing with a temporally reprojected previous frame, which eliminates the dizzy blurring due to camera movements and only preserves the "motion blur" of the cars.

video/mp4

lisyarus,
@lisyarus@mastodon.gamedev.place avatar

@eniko I have this frame's depth buffer and camera matrix, which can be used to reconstruct world-space position of the pixel. Then, I use the previous frame's camera matrix to figure the screen-space position of this world-space point in the previous frame, and use it to sample the previous frame!

lisyarus,
@lisyarus@mastodon.gamedev.place avatar

@fell @eniko I'm OK with animated stuff being blurred, that's the whole point :) You won't get true motion blur, though, something like light trails at night aren't possible with this approach.

lisyarus,
@lisyarus@mastodon.gamedev.place avatar

@fell @eniko But I'll still need motion vectors in this case?

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

Now with more-or-less proper depth-of-field

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

Having some kind of creative block lately regarding gameplay & marketing, so I decided to turn to graphics for now.

Working on depth of field effect, for now simply lerping towards blurred color at screen edges. Overshooting creates interesting edge-detection effects :)

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