Jump to content

  • Log In with Google      Sign In   
  • Create Account


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


Old topic!
Guest, the last post of this topic is over 60 days old and at this point you may not reply in this topic. If you wish to continue this conversation start a new topic.

  • You cannot reply to this topic
41 replies to this topic

#21 Geri   Members   -  Reputation: 172

Like
0Likes
Like

Posted 14 April 2010 - 12:42 PM

Windows update needs internet. Only 26,6% of peoples has internet access according to internet usage statics, wich can be viewed on http://www.internetworldstats.com/stats.htm

Sponsor:

#22 MrDaaark   Members   -  Reputation: 3539

Like
0Likes
Like

Posted 14 April 2010 - 02:34 PM

Quote:
Original post by Geri
Windows update needs internet. Only 26,6% of peoples has internet access according to internet usage statics, wich can be viewed on http://www.internetworldstats.com/stats.htm
Otherwise, the proper drivers are pre-installed by the system manufacturer. They just aren't updated without internet access.



#23 Hodgman   Moderators   -  Reputation: 27519

Like
0Likes
Like

Posted 14 April 2010 - 04:18 PM

I like the idea of your library, but I would only use it if it had GL2.0 suppport :/
Developing with GLSL shaders is much less effort for me than using the old fixed-function pipeline. It lets me focus on writing my game and not on learning obscure API details!

#24 Geri   Members   -  Reputation: 172

Like
0Likes
Like

Posted 14 April 2010 - 07:40 PM

Daaark: lot of manufacturers just check the device manager, and if they see the card name, they are install no drivers for the vga. This can mostly happend with small computer stores. Also can happend for computers buyd without os, and os installed by the neighbour ,,Stevie'' :D

Hodgman: currently i am not planning to expand it above OpenGL 1.3, but *MAYBEE* if recive a lot of request, i can add a extension that allows to acces d3d9 pixel shaders. Or if i found some LGPL-ed glsl to hlsl conversion tool, it would be much compatibyer. But this would not result opengl 2.0 features to come in, and the compatibility would be very crap anyway. So if you got no fixed funct fallback in your engine, i suggest you to not buy the software, as you sayd. Later if you will write a fallback in your software becouse of different reasons, and you would use the wrapper, contact me and i help you to place the library into your software.

#25 Ysaneya   Members   -  Reputation: 1235

Like
0Likes
Like

Posted 14 April 2010 - 09:37 PM

If your market are small indy developers that release small plat-form/puzzle games, there could be an interest for it.

However I agree with other posters that to be more generally useful, it needs to support GL 2. No offense, but Quake 3 and Return to Castle Wolfenstein are almost a decade old. You're not proving anything by supporting them.

By the way:

Quote:
TitaniumGL is also capable, to render your game with multicore cpu rendering


Can you elaborate ? How can it do that ? Have you done some benchmarks ?

Y.


#26 MrDaaark   Members   -  Reputation: 3539

Like
0Likes
Like

Posted 14 April 2010 - 09:41 PM

Quote:
Original post by Geri
Daaark: lot of manufacturers just check the device manager, and if they see the card name, they are install no drivers for the vga. This can mostly happend with small computer stores. Also can happend for computers buyd without os, and os installed by the neighbour ,,Stevie'' :D
People who buy from small shops, and get PCs custom built like that generally have internet access, and know how to install drivers. (which Windows update will automatically provide anyways, I haven't downloaded a driver from nVidia's site in years.)

Not supporting Shaders in 2010 is like not supporting texture mapping ten years ago. We are a decade into the age of the programmable pipeline.

#27 Geri   Members   -  Reputation: 172

Like
0Likes
Like

Posted 14 April 2010 - 10:01 PM

Daaark: well, we are in the age of programmable pipeline since ~6 years now (according to Radeon9800/9600), but except the AAA games, nothing is changed.

Ysaneya: yes, you can found a benchmark result on the project's webpage that has tested with multicore cpu rendering (a quake3 and a nehe tutorial), in benchmark d3d mode, the software rendering mode, and to cpmpare, the mesa3d software renderer can be also found.

Of course the wrapper can be forced to software rendering, so can be tryed with quake3 demo at your home. I suggest everyone, who want, to try the wrapper at home, with wolfenstein3d, or everybody-s own game software. It tells much more than some screenshot or benchmark result.

The software renderer is using a multicore cpu rasterizer, that i has rewrited three times to reach this quality and speed.

[Edited by - Geri on April 15, 2010 4:01:08 AM]

#28 MrDaaark   Members   -  Reputation: 3539

Like
0Likes
Like

Posted 15 April 2010 - 01:23 AM

Quote:
Original post by Geri
Daaark: well, we are in the age of programmable pipeline since ~6 years now (according to Radeon9800/9600), but except the AAA games, nothing is changed.
Geforce 3 and DX8 introduced that stuff in 2001. Everything is done in the programmable pipeline now, fixed function doesn't exist, it's only emulated.

#29 Geri   Members   -  Reputation: 172

Like
0Likes
Like

Posted 15 April 2010 - 01:47 AM

Yes, fixed function is emulated with shaders by the driver nowdays, its true. Yeah, i know that gf3 (and a bit later radeon 8xxx from ati) was the first shader capable cards, but at that time, massive shader usage was unpopular. Even GeForce4 MX contained no pixel shaders, this is why i told radeon 9500+ cards, those was the first cards meant really to the new shader world order.

#30 MrDaaark   Members   -  Reputation: 3539

Like
0Likes
Like

Posted 15 April 2010 - 02:04 AM

Quote:
Original post by Geri
Yes, fixed function is emulated with shaders by the driver nowdays, its true. Yeah, i know that gf3 (and a bit later radeon 8xxx from ati) was the first shader capable cards, but at that time, massive shader usage was unpopular. Even GeForce4 MX contained no pixel shaders, this is why i told radeon 9500+ cards, those was the first cards meant really to the new shader world order.

Those GF4s were rebranded GF2s for their budget line. Just like the Geforce2 MX was a rebranded GF-256.


#31 Geri   Members   -  Reputation: 172

Like
0Likes
Like

Posted 15 April 2010 - 02:08 AM

yup. but users just looked the number: it sayd 4. and ohh, 128 mbyte ram. ,,it shall be a famous card'', and they buyd. }:->

#32 Kambiz   Members   -  Reputation: 758

Like
0Likes
Like

Posted 15 April 2010 - 03:32 AM

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?

#33 Geri   Members   -  Reputation: 172

Like
0Likes
Like

Posted 15 April 2010 - 07:15 AM

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.

#34 Geri   Members   -  Reputation: 172

Like
0Likes
Like

Posted 02 May 2010 - 12:57 PM

new version:
2010/05/03
http://legend.uw.hu/TitaniumGL/TitaniumGL_2010_05_03.zip

updates:
-speed sightly improved with 4 cpu-core machines

#35 Lord_Evil   Members   -  Reputation: 680

Like
0Likes
Like

Posted 02 May 2010 - 09:58 PM

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.

#36 Geri   Members   -  Reputation: 172

Like
0Likes
Like

Posted 03 May 2010 - 12:11 AM

thanks for the interesting idea, but those shaders arent nvidia-only?

#37 Lord_Evil   Members   -  Reputation: 680

Like
0Likes
Like

Posted 03 May 2010 - 02:36 AM

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.

#38 Geri   Members   -  Reputation: 172

Like
0Likes
Like

Posted 08 May 2010 - 06:15 AM

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.

#39 Geri   Members   -  Reputation: 172

Like
0Likes
Like

Posted 10 April 2011 - 04:37 PM

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!

Create your 3D RPG: Maker3D

 


#40 Geri   Members   -  Reputation: 172

Like
0Likes
Like

Posted 20 December 2013 - 08:01 AM

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


Create your 3D RPG: Maker3D

 





Old topic!
Guest, the last post of this topic is over 60 days old and at this point you may not reply in this topic. If you wish to continue this conversation start a new topic.



PARTNERS