>>577
>From what I read, rendering a single triangle, and rendering 2k triangles is exactly the same, because of how gpu works.
This is true. I believe it's called batch rendering. There is a Raylib demo that demonstrates this, though it's all handled under-the-hood: ht tps://www.raylib.com/examples/textures/loader.html?name=textures_bunnymark
>In fact, I suspect that textured 3d grid without shaders will render faster than my "render one 32x32 tile at a time" approach,
Raylib is, and I suspect your libraries are as well, in fact, all 3D and running on the GPU (the shape-drawing functions are software, IIRC). You are using SDL right? Is there no SDLDrawQuad(Texture texture, Quad quad, Color ...) etc. function? What are you using to draw images to the screen now?
>using 3d
>Kind of pointless to me, since I use true 2d, because using 3d is much more work.
I think you misunderstood me. Let me try again. I don't think you're retarded; I just haven't been clear enough. The worlds you and I are creating, as they exist in our minds and in our design notes, are fundamentally 3-dimensional. Buildings, fences, walls, objects, whatever, have height. Human males might be 6ft on average, whereas a goblin might be 4ft. They have height. This is all independent of how we try to present these worlds to the player. You may have bats or birds flying around. They get drawn with a Y-axis offset to show them as being above their X, Y position. In our case, we have chosen the "2.5D", "isometric" perspective to present this 3D world to the player. Why? Because the isometric perspective allows the viewer to see the front, left, and top of an object (or right, back, top, whatever, depending on its orientation). These 3 views, similar to what you might see in a 3D editor, are enough to accurately communicate something's 3-dimensional form. If something looks like a circle from those 3 angles, you know it's a sphere. If something looks like a square from those 3 angles, you know it's a cube. From a gameplay point of view as well, it allows the player to move freely in the X, Y plane, while also allowing a look at things' vertical dimension (a door in a wall, the face of an NPC, etc.) that a strictly top-down view does not. Of course, we aren't using 3D engines with 3D models to achieve this effect. I'm using pre-rendered 2D sprites just like you are, and for the same reasons that you are - it is less work. I mean, look at this asshole. My poor fucking goblin, stolen from a stock photo site and cruelly reduced to only 16 colors, is shown here jumping up and down jankily. Everything in this scene is a 2D texture, drawn on a 2D plane. The underlying asset, the Goblin(), really has a z coordinate though. I use that to determine the Y-offset to draw him at, and also the position of his shadow. In the underlying simulation, he is well and truly moving up and down. For the 2-dimensional on-screen presentation of that, I have to use some tricks. I do hope you get what I'm saying.
>If I use 3d ground(which is the most 2d thing I have)
You can render a lumpy, bumpy, rocky, grassy 3D terrain to a 2D texture and draw that. In fact, you're already doing it. See my edit of one of your ground tiles that exaggerates the z-axis element. You can have a 3-dimensional element to it, in this case, the rocks and grass, while still having it tile nicely (if drawn properly back to front). That's what I meant. That's the beauty of pre-rendered 3D. There are always drawbacks though - make your ground tiles too "3D" and things will look weird moving over them.
>why not use 3d models for walls? And why not make ground stuff to be actual 3d modeled? And if 3d models for walls, why not use them for characters? It will be better and solve some problems, especially with animations, but its a lot of work.
Well, yeah. That must have been the question Blizzard asked themselves when they started work on Diablo 3, because that game's all realtime 3D. There are strengths and weaknesses to each approach. I considered them and went with 2D. Blizzard considered them and went with 3D for D3 and D4. Realtime 3D allows for more animations, more character skins and visible items, realtime lights and shadows, and so on and and so forth.
>I suspect I will have to move to 3d, but not today.
You just might. As might I. As long as we keep the world being simulated separate from it's on-screen representation, there shouldn't really be any problem switching over.
>The main goals are to have an engine, which is easy to work with, and easy to make content for it, and for it to look good enough.
You and me both.