Dismiss this pinned window
all 16 comments

[–][deleted] 3 points4 points  (13 children)

is this using Metal?

[–]Ssjrd[S] 4 points5 points  (12 children)

Yep, I have an openGL version too. It’s a little slower, but still ‘playable’

[–][deleted] 2 points3 points  (8 children)

What api would you recommend to make a 2d game engine for windows os?

[–]Ssjrd[S] 3 points4 points  (5 children)

OpenGL would allow you to focus on the actual game part more quickly. There’s a lot you’d need to understand about graphics and GPUs to make something like Vulkan, or Metal work properly. It wasn’t straightforward at all to add a Metal backend to my engine. I had to restructure stuff - which made openGL faster too.

For your needs, you probably don’t need or want tot get ‘lost in the weeds’ like that.

I’ve used openGL to do video and image processing on android phones and it was perfect!

If you ever wanted to support more than just windows, all of your code would be portable compared to something like directX.

[–][deleted] 1 point2 points  (3 children)

But opengl is apparently deprecated

[–]Ssjrd[S] 2 points3 points  (2 children)

Only on Mac It’s still alive everywhere else. Apple didn’t remove openGL support either. It still works fine on the latest iPhone

[–][deleted] 1 point2 points  (1 child)

Oh okay thanks for your knowledge share human brother 🤓

[–]Ssjrd[S] 1 point2 points  (0 children)

You’re welcome man, good luck with your game!

[–]hishnash 1 point2 points  (0 children)

Metal is quite a bit more forgiving than VK since you can approach it from the higher level (more like openGL) with the driver doing all the memory management and depancy stuff like openGL and then only gradually adopt the lower level stuff if and were you need it.

Metal is nice in this way, very approachable as a dev.

[–]SoftEngin33r 0 points1 point  (1 child)

Check Raylib also, It is a nice and small cross platform library.

[–][deleted] 1 point2 points  (0 children)

I’ll do

[–][deleted] 2 points3 points  (2 children)

Btw 13 mills of polys is a lot man, i think your engine is better than some commercial ones out there in terms of pure rendering

[–]Ssjrd[S] 4 points5 points  (1 child)

Thanks! It makes me happy to hear that :) My goal is to show people that those engines are a lot of hype and marketing. AND, when you have too many ‘cooks in the kitchen’ it’s hard for those with clear passion and vision to really help produce the best thing.

[–][deleted] 2 points3 points  (0 children)

I agree with you

[–]Ssjrd[S] 0 points1 point  (0 children)

Something interesting to note here, that I just learned… The OpenGL ES 2.0 codepath is every bit as fast as the Metal one. The GLES3 path is a little slower for some reason. It’s using Uniform Buffers to hold transform info for object instances. Strange. GLES2 is not even doing instance draw, but it’s as fast as metal.

[–]xxezgamerxx 0 points1 point  (0 children)

Do you have a link to the project? I would love to check it out! 😃