Tell me the 10? ways to API wisdom

Started by
5 comments, last by Spinningcubes 8 years, 6 months ago

I'm a bit left behind on the graphical API front and think of things like it's OpenGl 1.2 :). So time to update myself by learning a more modern API. So if you more modern and next-gen people can help me out by telling me the things i need to try out to learn the new modern way. Not a full game but rather smaller tests like render a cube, render to a texture, make a geometry shader and such smaller seperate things. The top steps to learn a new API really. Then i can make it into a top 10 list of things todo and work it off and feel good about myself :).

@spinningcubes | Blog: Spinningcubes.com | Gamedev notes: GameDev Pensieve | Spinningcubes on Youtube

Advertisement

It's all done with buffers these days. You allocate some blocks of memory and stuff data into them and then point your operation at the buffers and say "GO!".

If you've used 1.2, it's like using the array systems, only you don't allocate the arrays in your program's memory anymore, you just get the API to give you a pointer to the memory.

The other thing is there's no standard pipeline. So you HAVE to use shaders. And that means you have to do the matrix work to produce perspective projections, camera matrices and so on. The disadvantage with this is you have to get everything working at once before you can see any results. TBH, it's easier to go pinch some known working code and go from there because there's a lot of moving parts to all get running.

I've got 19 days left to finish my 10 tips :lol:
http://gcap.com.au/sessions/designing-a-modern-gpu-interface/

All lighting, matrix, fog functions etc. are gone and you have to implement them yourself or use libraries.

Aether3D Game Engine: https://github.com/bioglaze/aether3d

Blog: http://twiren.kapsi.fi/blog.html

Control

I've got 19 days left to finish my 10 tips laugh.png
http://gcap.com.au/sessions/designing-a-modern-gpu-interface/

Interesting, do you know if there are going to be recordings of your session that will be available?

Eric Richards

SlimDX tutorials - http://www.richardssoftware.net/

Twitter - @EricRichards22

I plunged into the Opengl 4.3/4.4 last year? Then I started a post because I couldn't find much.

http://www.gamedev.net/topic/667482-modern-opengl-tutorials/

If you just want to learn about everything, you need two things:

1. https://www.opengl.org/wiki - Trying to use the spec is impossible. Search for everything on the Wiki. It's not the best, but it will do.

2. Use the reference card - https://www.khronos.org/files/opengl45-quick-reference-card.pdf

This shows the entire API for both CPU and Shader stuff. All the sections with lots of stuff are the important ones. Then just experiment with those sections until you understand why they matter.

If you do this, you're ahead of probably 90% of people already. Oh, and then forget all that because Vulkan will be yet more to learn - http://vulkan-tutorial.com/

blink.png

I think, therefore I am. I think? - "George Carlin"
My Website: Indie Game Programming

My Twitter: https://twitter.com/indieprogram

My Book: http://amzn.com/1305076532

Thanks for the answers everyone smile.png.

Hodgman, i hope we can enjoy some slides or a recording later.
Glass_Knife, thanks for the links. I saved them in my notebook until i start with OpenGl or vulkan again. Right now the focus is learning to code graphics on the PS3.

This is the five steps i have performed so far.

1 Create a view and clear the screen to a random color each 500ms. (display setup, clear, flip of frame)
2 Display a spinning cube in the center of the screen. (vertex data, draw)
3 Load a texture and display on the cube. (load texture, display texture)
4 Load two meshes with seperate textures and display beside each other. (seperate objects, switch states/shaders between draws)
5 Add a freefly perspective camera. (matrix handling)

And these are the ones i have planned for next week. If you have any better ideas let me know.

6 Lightning (shader)
7 Shadowmap (shaders, render to texture, use texture again)
8 Skinning (setting shader parameters)
9 Posteffect
10 Debug tools (learn the tools that exist for the API to make things more easy)

I hope that will make me learn all the major parts of the API. Then i will try the same steps again on the next API.

@spinningcubes | Blog: Spinningcubes.com | Gamedev notes: GameDev Pensieve | Spinningcubes on Youtube

This topic is closed to new replies.

Advertisement