Remember me

Lost Password?

Register now!


Who's Online
66 user(s) are online (55 user(s) are browsing Forums)

Members: 0
Guests: 66


Support us!


Report message:*

Re: SDL2

Subject: Re: SDL2
by Capehill on 2020/1/26 9:16:58



testdraw2 --render software: 288fps
testdraw2 --render opengl: 400fps
testdraw2 --render compositing: 600fps

setenv SDL_RENDER_BATCHING 1 improves numbers in benchmark.


What I want to understand is why compositing is _that_ faster? I mean, why for example minigl/warp3d (and as well as warp3dnova), haven't used "compositing in some parts if it faster. I.e. be OpenGL, just use compositing inside for things where it will be faster.

Compositing is a misleading name for AmigaOS 4 backend because CompositeTags is not be used for all kind of drawing. Backend uses various graphics.library functions and in some cases (alpha blended lines, point at least) it goes into SW mode.


Just such a massive difference... Can it be luck of DMA for example?

OpenGL is a massive state machine and it needs more setup than graphics.library to draw something. OpenGL needs more function calls to make things happen.

But OpenGL can use primitive batching so drawing something like large line strips should be faster on OpenGL than graphics.library. Or drawing alpha-blended points or lines.


Can anybody explain why OpenGL vs compositing should be that slow when it comes to simple texture drawing?

Texture upload is slower with MiniGL than with graphics.library at least on the platforms that I have tested. I don't know the exact reason, that's probably something that only a person who can read graphics.library and Warp3D code, could answer.

Powered by XOOPS 2.0 © 2001-2016 The XOOPS Project