@bert_hubert @ibestuur Dus ook niet voorbij gekomen op #OpenTK? Dan maar opvragen denk ik. Kan nog even zoeken hoe ik ook al weer de cache van de zoekmachine op kan vragen.

Как писать нативные игры с OpenGL ES для игровой ретро-консоли Anbernic на C#

В этой статье я расскажу, как писать игры для консоли Anbernic средствами OpenGL ES на C# .NET8. Для примера напишу примитивный клон Майнкрафта. Рендерить

https://habr.com/ru/articles/979148/

#Minecraft #Anbernic #OpenGL #opengl_es #воксельный_рендер #opentk #геймдев #homebrew #linux_game_programming #game_console

Как писать нативные игры с OpenGL ES для игровой ретро-консоли Anbernic на C#

В прошлой статье о создании игры для консоли Anbernic я использовал библиотеку SDL2 и писал Google Dinosaur на C++. В этой статье я расскажу, как писать 3D игры средствами OpenGL ES на C# .NET8. Для...

Хабр

@bert_hubert Hi. Tot hoever gaat opentk terug de tijd in qua archief?

ik kon het niet zo snel vinden en iets te weinig headspace om een goede hack te bedenken om dit af te leiden

#opentk

De democratische rechtsstaat staat onder druk – niet alleen in andere… | Ruud Huijts

De democratische rechtsstaat staat onder druk – niet alleen in andere delen van de wereld, maar ook bij ons in Nederland. Juist daarom is het zo belangrijk dat burgers op een laagdrempelige manier toegang hebben tot betrouwbare, actuele informatie over wat er in Den Haag gebeurt. Vanuit die gedachte ontstond het idee voor OpenTK-MCP: een koppeling tussen parlementaire data van de Tweede Kamer en een AI-taalmodel. Wat me motiveerde, geïnspireerd door het OpenTK-project van Bert Hubert, was de vraag: hoe maken we informatie van de Tweede Kamer toegankelijk en doorzoekbaar voor alle burgers – ook voor mensen zonder technische achtergrond? Door actuele data van de Tweede Kamer, geleverd door OpenTK, te verbinden met een AI-assistent als Claude, kun je gewoon in natuurlijke taal vragen stellen. Geen ingewikkelde zoekopdrachten, geen technische drempels. Stel je bent benieuwd naar de debatten over het Klimaatakkoord van begin 2025 – je vraagt het aan Claude, en je krijgt direct een overzicht met samenvattingen en links naar de officiële Kamerstukken. Of je wilt weten welke moties er recent zijn ingediend rond de Woningwet – Claude verzamelt ze voor je, inclusief indieners en PDF-links. En ook praktische informatie, zoals verjaardagen van Kamerleden, hun partij, laatste activiteiten en agenda’s van komende debatten: alles is opvraagbaar, helder gepresenteerd, en altijd voorzien van een link naar de bron. OpenTK-MCP kan bijdragen aan een democratie waarin betrokkenheid makkelijker wordt. Waarin je als burger zonder moeite kunt volgen wat er speelt, en ook zelf onderzoek kunt doen als dat nodig is. Want toegang tot goede informatie is geen luxe, het is een voorwaarde voor een goed functionerende democratische samenleving. OpenTK: https://berthub.eu/tkconv/ OpenTK-mcp: https://lnkd.in/eV2vTGEV

No real visual has changed, but much has changed under the hood.

Everything is now renderable GameObjects, they are all sorted according to z position, then group together according to shader and texture. So each group will be one draw call. 😃

The only issue I can see right now is that all shaders have to have the same input for me to keep things simple, and I did set out to make a VERY simple #miniEngine, so I might just accept that limit, until I need it... 🤔

#gamedev #OpenTK

I've managed to add mouse clicking on game objects. It's not the right way of doing it 🙊 , but it works.... As a proof of concept.

I'll soon have to start structuring everything and generalizing buffers, might even have to optimize a few things. But the parts are almost there 😀

Not sure how to keep the collision check-area size down, when the objects are big? Like a floor collider that might be 100s of pixels wide, the center can be a long way away. hmmm. 🤔

#miniEngine #Gamedev #OpenTK

So, there might be a tiny bit of value in doing some data structuring before checking for collisions 😄

I improved performance from 7 FPS with 3,000 balls all colliding with each other, which comes to 9 million collision checks, down to around 22,000 collision checks, with an FPS of ~65 FPS using the newly implemented Quadtree! 👀 And that's without any optimizing of the code.

I feel like I'm creating and destroying a lot of objects when building the Quadtree. 🤔

#gamedev #openTK #miniEngine

Got depth working using sorting on Z position, just have to do it for each buffer. But that makes sense. Just have to do it. Maybe one for background, one for main game, and one for UI. I'll figure it out. 🤔

I also got naive collision to work, circle vs circle vs rectangles. But it's SO slow as I check all vs all. So there's a lot of room for improvement.

There are still so much to learn 😄

#openTK #gamedev #miniEngine

Sigh.. So I thought that GL.Enable(EnableCap.DepthTest);
would fix the last part of my optimization struct and rendering. That the depthbuffer would solve all the ordering. But NOOoo.. oo.. 😢 I DO have to sort the gameobjects so they rendere back to front.
So I can't used my array of sprite struct as I use pointers directly into it.

A lot of words.. In short I can't use current optimized structure and will need to copy all data to the array each frame. 😞

#OpenTK #GameDev #miniEngine

Progress: I now got text, FPS indicator, a player with very basic keyboard control, and a cursor for the mouse. 😃

I've started implementing a simple collision detection system, circles, rects and ray casting. No rotation! I don't like rotation of pixel graphics.

Long way to go, but the elements are starting to get there, and I'm starting to see where I need better structure and ordered code execution. 🤔

It's SO nice to be able to do stuff like this again 😃

#Opentk #gamedev #lowres