TitaniumGL, opengl multiwrapper for your game (opengl,d3d,multicore soft-render)

Started by
40 comments, last by Geri 10 years, 4 months ago
yup. but users just looked the number: it sayd 4. and ohh, 128 mbyte ram. ,,it shall be a famous card'', and they buyd. }:->
Advertisement
Quote:Original post by Geri
yup. but users just looked the number: it sayd 4. and ohh, 128 mbyte ram. ,,it shall be a famous card'', and they buyd. }:->


I bought my last graphic card from ARLT. The cheapest graphic card they are selling currently is a GeForce 7500LE for about 26€ and it supports OGL 2.
You have wrote an interesting library and probably put a lot of time in it, but GL 1.3 is history in my option.

Still the multi-core rendering is interesting, may I ask what resolution the benchmarks on your webpage correspond to? Also how does your library compare to mesa on 1 or 2 cores?
huhh, i dont know the res, i think with quake3 it was 640x480 or maximum 800x600, and the nehe tutorial was benchmarked on its default window size (it would be much effective and trustable to write everything from that computer, but i just dropped some fast benchmarks to the webpage in a very hurry. i will may replace them later, and add some new results also).

The speed of the software rendering:
Its not realy a multipler that i can say.
-mesa3d is mostly a bit faster, same, or a bit slower on a 1 core cpu'd machine.
-titaniumgl is ~5% - 70% faster than mesa3d on a 2 core cpu machine.
-titaniumgl is 2x-3x faster on a 4 core cpu machine tipically.

(mesa3d is capable to single core rendering only)

Typically.
but in reality, it is depending on the application (may can happend that a game cannot rendered normally on multi-core, becouse they use too few geometry).
Like, quake3 runs very nice with my renderer, but glxgears runs very-very bad on tgl software renderer, and its runs beautifully with mesa.
new version:
2010/05/03
http://legend.uw.hu/TitaniumGL/TitaniumGL_2010_05_03.zip

updates:
-speed sightly improved with 4 cpu-core machines
Just a side note: I use NVidia CG for my shaders, so I can write them once and use them with D3D and OpenGL. Maybe you could incoporate it into your library as well.
If I was helpful, feel free to rate me up ;)If I wasn't and you feel to rate me down, please let me know why!
thanks for the interesting idea, but those shaders arent nvidia-only?
No, unless I understood something completely wrong the CG compiler actually compiles the CG shaders into GLSL or HLSL (it might directly compile them to their binary form, I didn't check that yet).

Edit: you might have to be careful with the newest features, though. They might not be supported by ATI hardware (yet). However, you might be able to use profiles to restrict shaders to the common features supported by both NVidia and ATI.
If I was helpful, feel free to rate me up ;)If I wasn't and you feel to rate me down, please let me know why!
Updated. New version is:
------------------------
TitaniumGL_2010_05_08


Extension list:
---------------
GL_ARB_multitexture
GL_ARB_texture_env_crossbar
GL_ARB_texture_non_power_of_two
GL_ARB_transpose_matrix
GL_ARB_vertex_buffer_object
GL_EXT_abgr
GL_EXT_bgr
GL_ARB_texture_env_combine
GL_EXT_blend_func_separate
GL_EXT_bgra
GL_EXT_blend_logic_op
GL_EXT_cmyka
GL_EXT_compiled_vertex_array
GL_EXT_draw_range_elements
GL_EXT_generate_mipmap
GL_EXT_multi_draw_arrays
GL_EXT_rescale_normal
GL_EXT_texture_env_combine
GL_EXT_texture_object
GL_EXT_vertex_array
GL_SGIS_generate_mipmap
WGL_ARB_extensions_string
GL_ARB_multisample
WGL_EXT_extension_string
WGL_EXT_extensions_string
WGL_EXT_swap_control
GL_EXT_texture_env_add


Changements:
------------
(d3d) D3D wrapping speed is improved around 20%
(d3d) Some pixel line flickering was fixed when multitexturing or alpha blending
(d3d) Fixed bugs in device lost recovery code
(d3d) Now the d3d mode inits with antialiasing at default
DLL-s image base modifyed
(d3d) glGetString returns the graphics card name as RENDERER
(d3d) Some texture filtering bugs has been fixed
(d3d) Scissor test has been fixed

http://TitaniumGL.tk



---------------------------------------
new version shortly arrives.
updates:
what happend since the last reply?
Improvements:
-Extension added: GL_ARB_map_buffer_range
-Extension added: GL_OES_matrix_get
-Color buffer writemask support has been added
-Speed-up around matrix calculations
-Thread handle leaking fixed
-Strange protch has been fixed in windowed rendering
-Number of acessible TMU's incared from 3 to 4
-Added a bounch of missing texture formats, like 4_4_4_4, 10_10_10_2, etc...
-Added fixed-point support
-Added experimental OpenGL ES 1.x support and ES context creation
-glPushAttrib was broken
-Fixed some bugs with Tuxracer
-Fixed some bugs in Tuxkart
-Default variables around light handling was broken
-Fixed missing colors with porrasturvat
-Fixed crash with stepmania
-Some fixes around lighting and material handling
-Fixed display list drawing when texturing is disabled
-Improved multi-cpu support
-Added some missing parameters to glGet
-Added some missing caps to glIsEnabled
-Improved SEGFAULT protection in VBO data mapper
-Added multisampling support under linux
-Scissoring now affects clear
-Big data blocks can now processed on multiple cpu cores
-Default viewport is fixed with SDL's buggy window init
-A small speed improvement in vertex processing
-A matrix calculation bug fixed with some complex matrixes
-Direct access to Directx's Hardware T&L pipeline in some situations
-Texture loading time improved for big textures.
-Perspective vertex flickering fixed
-Around total 50-300% speed-up.

-OpenGL version is 1.4, software now shows graphics card name and graphics memory in the renderer string.
-My software reaches 20 000 user. According to this, who calimed that nobody needs my software, failed brutally.
-Newest release finally smashes competitive softwares to the ground, it finally gained enough speed, and compatibility to overtake the lead.
-The software is now donationware.
-Some games now includes my software as default. Some of the developers played few, some of them played lot for my software.
Actually, its now donationware. You pay what you want!
-A Gamedev donator who sends more than *contact with me and we deal the price (dont worry, not so lot)*, gets the source code to view.
-A Gamedev donator who sends more than *contact with me and we deal the price*, gets an own source code fork.
-You see a bug? Contact me!

TitaniumGL 2014, 01. released

-Well a few days still left until 2014, whatever
-Added mip-mapping support for the software renderer
-5-25% generic performance gain
-Fixed some ,,dotting'' bugs with the software renderer
-Fixed some segmentation fault bugs (texture upload forgot to lock rendering...)
-Fixed a memory-pool related crash on linux
-32 bit binary now compiled again with i686 flag
-Software renderer now supports up to 128 threads instead of 24

This topic is closed to new replies.

Advertisement