Email or username:

Password:

Forgot your password?
21 posts total
Nikita Lisitsa

I'm starting the tutorial series on writing your own CPU rasterization engine! It will be huge, so I'll publish it piece by piece. The first three articles are already live šŸ„°

lisyarus.github.io/blog/posts/

Nikita Lisitsa

āœØA new article: (Yet another) Introduction to quaternions!

I'm a mathematician, so my desires are unconventional and my perspective is skewed, but I hope it will be useful at least in some way šŸ˜…

I've also added a useful cheatsheet in the end šŸ„³

lisyarus.github.io/blog/posts/

Show previous comments
Eric Lengyel

@lisyarus Under "Quaternions in Clifford (aka geometric) algebra" near the end, there's a problem with your definition of i, j, and k. Notice that ij ā‰  k, but instead ij = āˆ’k, so these are not actually isomorphic to the quaternions. You need to negate all three bivectors so that i = āˆ’eā‚‚ā‚ƒ, j = āˆ’eā‚ƒā‚, and k = āˆ’eā‚ā‚‚.

Eric Lengyel

@lisyarus There's also a typo in the "Quaternions in Clifford (aka geometric) algebra" section where you accidentally say eā‚eā‚ƒ = āˆ’eā‚ƒeā‚‚. There's another typo in the first line of the "Dot product via conjugation" section where the closing parenthesis is missing for (w,x,y,z).

j_bertolotti

@lisyarus I am not a statistically significant sample, but I really enjoyed this! šŸ˜ƒ

It is (obviously) the kind of topic one could write a book on, so in a blog post choices need to be made on what to include and what to skip. But overall it feels like a nice stepping stone for anyone who would like to learn about quaternions!

Nikita Lisitsa

I've finally fixed a longstanding bug with animations in my engine! If I don't make Blender sample animations at each frame when exporting to glTF, they looked funny and really wonky. Turned out I missed one term in cubic spline interpolation formula šŸ™ƒ

I've also added some preprocessing code that flips rotation quaternions so that two successive keyframes are always on the same hemisphere. Is this something people actually do?

Nikita Lisitsa

Here's the fix, btw. `td` is the duration between two input keyframes.

Nikita Lisitsa

Would anybody care about an "Introduction to Quaternions" article, or are there enough of them on the internet already? I'm thinking of deriving everything up to rotations and slerp in a beginner-friendly-but-still-precise way.

(boosts for coverage appreciated)

Show previous comments
Scherzog von Beast Oil

@lisyarus To date this has been the easiest to understand explanation of quaternions that I've come across: youtu.be/en2QcehKJd8

Unfortunately it is an hour long video of a powerpoint presentation so referring back to it is a pain. A text form article that takes notes from this would be amazing to have!

nickdrawthing

@lisyarus I *still* don't really understand them tbh so I'm always interested in more explanations.

Nikita Lisitsa

Masters degree in *checks notes* made up marketing buzzword and hashed images

Yeah sounds 100% legit ngl

Nikita Lisitsa

āœØ Roguelike
šŸ¤– Sci-fi
ā› Mining & crafting
ā³ 2+ hours of content
šŸ˜ŗ Cats

I made a roguelike in 7 days for #7drl and I think it turned out amazing! I'd be sooo happy if you tried it out: lisyarus.itch.io/mars-2112

Boosts much appreciated šŸ‘‰ šŸ‘ˆ

Alfred R. Baudisch

@lisyarus seems really cool! I'm playing it and I explored the 1st floor/map multiple times, and it seems that I'm in an unwinnable situation, soft locked, as there's nowhere else to go.

andrybak

@lisyarus cool. I've got to level 3 so far. Kinda expected grenades to destroy furniture, which blocks corridors and doorways, but oh well, indestructible martian furniture.

Nikita Lisitsa

My cozy traffic sim demo is available RIGHT NOW as part of Steam Next Fest! Almost a year of work and it's finally done - go try it, and don't forget to wishlist the game :)

store.steampowered.com/app/240

Show previous comments
Nikita Lisitsa

Apparently the game also runs on Steam Deck! That's so cool, since I've only tested it on Windows & Linux PC. I guess my Linux packaging skills are enough for that :)

andrybak

@lisyarus What is the best way to send feedback?

I wish the districts didn't build themselves during _pause_ ā€“ I want to be able to try out different road designs without districts forcing me into the layout on the first try.

andrybak

@lisyarus congratulations on the demo. šŸ„³

I'm looking forward to the full release.

Nikita Lisitsa

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

lisyarus.itch.io/tower-offense

#indiedev #GMTKJam #gmtk2023

Nikita Lisitsa

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: lisyarus.github.io/blog/graphi

#graphics #animation

jell

@lisyarus Thank you for this "Missing Manual". I haven't yet had to get down'n'dirty with glTF (beyond feeding static models/attribs to a shader) so this should serve well as a handy resource [or possibly a grave warning]. šŸ˜„

VoR

@lisyarus Good article. Some bits was a lil hard to follow, but its mostly because I'm trying translate your descriptions of things to how I've built things. Like using Local CS in many places felt confusing because I've been calling these things world, model & local spaces for years now when dealing with skinning transform hierarchies.

And the GLTF stuff, woof, how much I hate their bindpose implementation. I stick to using the localspace node transforms instead of bindpose matrices.

VoR

@lisyarus github.com/sketchpunklabs/osso

Here's an alternative example of doing matrix skinning in glsl. This way you can remove the loop in your shader & get the final model space transform for the bone that you can apply to the pos & normal, instead of computing it twice.

In that folder I also have Pure DualQuat, Transform > DQ+Scale and SQT skinning alternatives.

Nikita Lisitsa

Worked for several days on this: here's the first devlog for the chill traffic simulation game I've been working on :)

youtube.com/watch?v=s-G0GoJEwd

Nikita Lisitsa

@jonikorpi I mentioned you in the video because your terrain was a direct inspiration for me, hope it's OK :)

Nikita Lisitsa

Here's my submission to Ludum Dare 53 Compo: a soft-body physics-based game where you build a soft & wiggly spacecraft and explore a random planetary system!
lisyarus.itch.io/andromeda-delivery-service

#ldjam #indiedev #LudumDare53

[DATA EXPUNGED]
Nikita Lisitsa

#ldjam progress: flying between planets + soft parallaxed stars on the background to help visualize player's speed

TeaHands :pmgpurple:

@lisyarus Well done you've invented spaceship QWOP šŸ˜…ā€‹

Nikita Lisitsa

Prototyping a new UI lib, implemented something like React's reconciliation. The idea is that you describe the UI in terms of a simple declarative DSL, explain how to turn it into a component tree and the library does everything else automagically.

#indiedev

Nikita Lisitsa

Honestly the best feature of mastodon is that when you copy a link to a post it doesn't add a "?s=20" to it

Karyl :godot: :procreate:

@lisyarus yes that ?s=20 always made (and makes) me irrationally angry

Nikita Lisitsa

The cities in my game start to look increasingly like actual cities

#indiedev

Efi (nap pet) šŸ¦ŠšŸ’¤

@lisyarus Cities Skylines should be ashamed of not looking this good

Trojan Duck

@lisyarus I love this kind of simple but elegant aesthetic in games. Keep us posted.

Nikita Lisitsa

Full day fighting with loading & applying skinning to glTF models and I finally have properly animated windmills! The animation is hard-coded, though, so the next thing to do is to load the animation itself from glTF as well.

#indiedev #screenshotsaturday

Doug Binks

@lisyarus Looks like they're waiting for clearance to take off.

Nikita Lisitsa

A small timelapse. The project feels like it's really getting together, at least visually :)

#indiedev

Nikita Lisitsa

I've finally made a video tutorial / devlog about the particle simulator I released in January. It explains how to use it and shows some cool simulations :)

youtube.com/watch?v=tea0qJx9_h

Go Up