Hacker Newsnew | past | comments | ask | show | jobs | submitlogin
Pikuma: Isometric Projection in Game Development (pikuma.com)
145 points by myth_drannon on March 2, 2022 | hide | past | favorite | 24 comments


Eidos published an isometric game I coded in the 90s:

https://en.wikipedia.org/wiki/Abomination:_The_Nemesis_Proje...

This article doesn't go into what a bitch isometric is. I remember spending a full day just on the calculation to go from 2D mouse pointer position->3D x,y,z tile position being clicked on.

And the game was supposed to be all pixel art. But then you have to render thousands of frames of bitmaps for the characters to have 8 DoF with every frame of every action they can make (walk, run, shoot, climb, etc), which adds up to a quadrillion MB of graphics. So during development it was decided the game would be 3D poly characters over 2D iso tile backgrounds. So, converting the whole game was fun. Those were the days before 3D engines really existed. The 3D engine was the one you wrote.


There's a whole Let's Play series of your game on YouTube - https://www.youtube.com/watch?v=lubyi79e6SY&list=PL7GvZV4nKh...


Yeah, poor bastard. I've never played the game myself. That was left to the testers. I bet a lot of game developers don't play their own games, just like most actors try not to watch their own movies.


I’ve had an obsession with isometric rendering and related art since I first played SimCity 2k and love seeing content like this! I wrote a basic game using MonoGame and my own renderer for Tiled to get a better understanding. I had it running on an early Windows Phone 7 device butter smooth and found it a fun exercise to try and replicate some of the interactions from the games I liked as a kid. Obviously even a 1Ghz ARM processor is miles ahead of what SimCity and other great titles ran on, so was kind of “cheating”.

Something I’d like to read more of is supporting things like fixed rotation and strategies for depth/Z index from real games with code examples. I remember getting a bit stuck on animations of tall sprites with other game objects not rendering in the correct order. Eg a highway overpass or bridge with people/cars underneath. Would definitely pay for quality tutorials with code examples.

Edit: this is the first I’ve heard of Pikuma, this looks great well done!


when I think of isometric games most of the names I remember are from a long time ago.

I completely understand what you mean. Rollercoaster Tycoon comes to mind with physics and extremely complex animations.

Great stuff!!!


I'm not 100% sure what I think about Pikuma. Gustavo is a good teacher, his methods are fairly well explained and easy to understand, but sometimes he doesn't seem to know what he's talking about.

I took his first ECS game engine course, and it was good for a few hours, but halfway through the course it was clear he hadn't really understood what ECS is and was implementing his understanding of it.

I took his updated course which he'd overhauled and it seems he now properly understands ECS and the course was much better.


Misunderstanding ECS is very common. Mostly because the name includes entity and component, so many people think that any architecture where you have an entity container with behavior defined in components is an ECS.


A lot of people also miss that in ECS, "System" is part of the "noun triple" and not a description of the first two nouns.

Put another way, there's a difference between an "Entity Component" architecture and an "Entity Component System" architecture. A lot of people read ECS as "A system made of entities and components" when it's actually "An architecture composed of Entities, Components, and the Systems that act on them".


That's a nice succinct way of putting it!


Loved the article, thank for sharing! I remember as a kid, being a big fan of Rollercoaster Tycoon, I wanted to create my own isometric game. I made it in The Games Factory, which was a no-code drag and drop game maker tool. I remember that I loved working out all the coordinate calculations from screen to tile and vice versa, like the stuff written in the article. I wanted to build a Camping Site Tycoon with lakes and water glides, but I abandoned the project. Thanks for sharing!


Loved the article, thank for sharing! I remember as a kid, being a big fan of Rollercoaster Tycoon, I wanted to create my own isometric game. I made it in The Games Factory, which was a no-code drag and drop game maker tool. I remember that I loved working out all the coordinate calculations from screen to tile and vice versa, like the stuff written in the article. I wanted to build a Camping Site Tycoon with lakes and water glides, but I abandoned the project. Thanks for sharing!


Wow! I did not know Rollerecoaster Tycoon was programmed in assembly!! This is super cool.


I love Chris Sawyer games.

Chris' website says he used MS Macro Assembler, MS Visual C, MS DirectX 5 SDK, and some other custom tools to develop RCT.


Pikuma is awesome. +1 for this article that also is awesome.


I played Age of Empires. Is AoE considered isometric?


Yes, both the original games and the remakes/remasters (hd edition and definitive edition) https://www.ageofempires.com/news/age-empires-definitive-edi...

> Wait, this game looks 3D?

> It certainly does look 3D! In our work to bring Age of Empires to modern devices, we used the same 2 dimensional isometric engine that is so recognisable from the original Age of Empires and Age of Empires II games. When we started development on Age of Empires: Definitive Edition, we started building further on this original engine as well. Modern tricks on top of the recognizable 2D engine results in a 3D look, but it’s still 2D at heart.


The site pikuma is a hidden gem. It's really good.


As someone interested in making some indie games, any courses you'd recommend?

I'm always looking for a weirdly.. medium level explanation of things. I specifically focus Rust, and use Rust game frameworks (because they interest me), but i often find i need more information than the framework level tutorials explain.. but not necessarily "write everything from scratch in C".

Maybe i'm wrong, maybe i as a person do need everything-from-scratch to wrap my head around everything. It just feels like so often frameworks assume so much more domain knowledge than i have. Yet most books/courses/etc are binary. They're either super deep, or super light.

Are there medium courses? Are medium courses even possible?


Take the course on the site. If you want to develop a 2D engine it teaches you how to do it.


Oh yes, I heard about it in another forum as well, never got around to it...


I did the game physics course there as well, really enjoyed it https://pikuma.com/courses/game-physics-engine-programming


what a coincidence!!! Just today saw his youtube video on 4x4 matrices.. and today I found him here also :)


I saw on another forum one of his courses as well.... small world!


Great stuff!!




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: