--- Raphael fenix@club-internet.fr wrote:
Well, drawStriddedSlow is very very very slow (as function name :) ) because is the software rendering path of wine d3d8 implementation The only way to have good performances is to add needed support to hardware rendering path (drawStriddedFast).
Current version on hardware rendering path doesn't support (see d3d8/drawprim.c:1590):
- pixel size (rarely used)
- blending weights (low use)
- diffuse color (highly used)
In this cases the slow rendering path is used instead.
I have a local "prototype" to have a better support of that cases (using hardware vertex buffers) who have very good performances. Ex: i have now a good framerate for UT2004 and Unreal2 (before i had ugly lags)
But, as Jason is currently doing a lot of work on splitting/moving code to wined3d, we'll have to wait to commit it (and i should help him, when i'll have time).
Is this a tedious task or does it require knowledge of the codebase? I might be able to help.
Anyway, can you test what GTA4 want to use: diffuse, psize or/and blending ? I'll try to send you a patched version of d3d8 to test after that :)
GTA uses diffuse color exclusively. This was after playing the game for about 3 minutes on highest settings: pixel size: 0 diffuse: 745455 blending weights: 0
Regards, Raphael
PS: how have you done to use oprofile on wine ? i'm very interested :)
Just download the latest CVS from http://oprofile.sourceforge.net/download/ and see the README. I assume you know how to get it compiled and installed :)
As root: # opcontrol --start # opcontrol --reset '--reset' clears out any old unwanted profiling data # opcontrol --separate=kernel '--separate=kernel' Seperates output by library and kernel [this is the hardest option to understand].
Profiling is on, run the application to profile and do not do anything else.
When done: # opcontrol --dump '--dump' flushes remaining data to disk # opreport -l >./myreport.log Stores the flat profile in a file called myreport.log.
Brian G
__________________________________ Do you Yahoo!? Meet the all-new My Yahoo! - Try it today! http://my.yahoo.com
On Thursday 18 November 2004 01:29, Brian Gunlogson wrote:
But, as Jason is currently doing a lot of work on splitting/moving code to wined3d, we'll have to wait to commit it (and i should help him, when i'll have time).
Is this a tedious task or does it require knowledge of the codebase? I might be able to help.
Only boring tasks, knowledge must be required when moving the drawing code
Anyway, can you test what GTA4 want to use: diffuse, psize or/and blending ? I'll try to send you a patched version of d3d8 to test after that :)
GTA uses diffuse color exclusively. This was after playing the game for about 3 minutes on highest settings: pixel size: 0 diffuse: 745455 blending weights: 0
Ok, good news. It should work well with my version :)
Regards, Raphael
PS: how have you done to use oprofile on wine ? i'm very interested :)
Just download the latest CVS from http://oprofile.sourceforge.net/download/ and see the README. I assume you know how to get it compiled and installed :)
As root: # opcontrol --start # opcontrol --reset '--reset' clears out any old unwanted profiling data # opcontrol --separate=kernel '--separate=kernel' Seperates output by library and kernel [this is the hardest option to understand].
It should be easier to use it as user :(
Profiling is on, run the application to profile and do not do anything else.
When done: # opcontrol --dump '--dump' flushes remaining data to disk # opreport -l >./myreport.log Stores the flat profile in a file called myreport.log.
Thx, i'll play with that (after fixing stupid install problems)
Brian G
Regards, Raphael