• Advertisement

Archived

This topic is now archived and is closed to further replies.

D3D Pipeline compatibility issues...

This topic is 6059 days old which is more than the 365 day threshold we allow for new replies. Please post a new topic.

If you intended to correct an error in the post then please contact us.

Recommended Posts

I tried adding the PR_SetD3DPipeline(1); things into the lightmap example (one before the objects are loaded, and once in the program loop like how other examples have it). When I put these in, nothing (not even the object mesh) is rendered to the screen. What is the reason for this? Are lightmaps on PRO files not compatible with the D3D Pipeline? -Rich

Share this post


Link to post
Share on other sites
Advertisement
I''ve got the same problem with SimpleLand Example.
In my case, the SetD3DPipeline method allows to render PRO loaded, but it doesn''t take part of vertex list modification.
In this way the D3Dpipeline use its own vertex list and Objects Files aren''t used as asual...
I would like to use the PR_MorphWithNormal method (and also some methods I made) with D3DPipeline...So Chris!! How must I do to put all the altered vertices in the 3D pipeline? (I Don''t know the method to use)
Is it possible to mix differents way of rendering?
...
I use the simpleland example (to render BSP & terrain) but I also want to use Pro File or Self Generated object...(and some method such as MorphWithNormals that alter Vertices Lists)..
How is it possible to inject all of those in the 3D pipeline?
...
Thanks Chris (or anyone else :o)
(Good Job for the LStudio) ^_^

Share this post


Link to post
Share on other sites
Guest Anonymous Poster
can someone who has the engine contact me on icq 10323210
i need some help

Share this post


Link to post
Share on other sites
You won''t be able to use the morph routines with the d3d pipeline.

However there is an alternative. The MD2 code from CHR Edit does vertex tweening using vertex shaders and the D3D pipeline. I plan on adding support for a series of .3ds or .pro files to CHR Edit using this technique.

Share this post


Link to post
Share on other sites
Guest Anonymous Poster
There is no way to modify object in 3D pipeline?
I don''t really understand why? Because if there is a need of morphologic transformation with interracting surrounding...how can it be realized?
Arf..
It''s really hard to avoid this vertices transformations...
I was really enjoyed by using PR when it used Vertices List and Rendering List...
But now ...I''m quite lost in all news things (that I don''t really understand)...
So As you said.... if I wish to manipulate a cube (and its vertices transformation) I can''t do It with 3D Pipeline..!
So Is there a solution to use both rendering mehtod...(the older...(with PR_NewFrame...RenderFram etc..) and the 3D Pipeline??
I can''t do without Object manipulation on my application...so...

Sorry For my Poor Questions...But I Enjoy using PR (since PR 2.4 demo) and I want to succeed with my application :o)

Thanks For ALL :o)
JC

Share this post


Link to post
Share on other sites
You can change which pipeline is used PER OBJECT.

Call PR_SetD3DPipeline(1) and render your static d3d pipeline objects (ie background scenery), then call PR_SetD3DPipeline(0) and render the deformable objects.

You can also access the D3D vertex buffers, lock them and change the vertices yourself. It''s not pretty but the possibility is there.



Share this post


Link to post
Share on other sites
Chris

I have several CHR's built from MD2's.
As you've explained previously the D3D pipeline must be off when rendering them,otherwise slowdowns occur.

Are you now saying that if I recreate these CHR's using the
latest CHREDIT, they can now use the D3D pipeline for improved
performance?

Thanks in advance for helping!
Petrovski

Edited by - Petrovski on July 17, 2001 2:29:49 PM

Share this post


Link to post
Share on other sites
Yes, if you import MD2''s using the latest CHR Edit it will insert a vertex shader into the .PRO file and use the D3D pipeline.

Make sure you enable vertex shaders in your application and turn on the d3d pipeline before rendering the character and that''s it.

Share this post


Link to post
Share on other sites
PR_Globals.EnableVShaders = 1;
PR_Globals.EnablePShaders = 1;

(Enables Vertex and Pixel shaders)

Share this post


Link to post
Share on other sites
Thanks Chris

What happens if shaders are enabled but graphics card
doesn''t support them?

For example I have a Radeon can I only enable Vertex shaders?

Are pixel shaders required for the CHREDIT MD2 CHR''s anyway?

Thanks in advance for helping!
Petrovski

Share this post


Link to post
Share on other sites
Those only suggest to the engine that you want to use them. If pixel shaders are not supported it won''t use them. Vertex shaders are always available on the CPU, but some cards can do them faster in hardware.

The character can still be rendered using the PR pipeline if you call PR_SetD3DPipeline(0) before they are rendered. You can test this in PRO Edit and see the effects by toggling the settings from the View menu.

The one setting you''ll want to avoid is using the D3D pipeline with vertex shaders disabled. It will only swap pointers to the vertex buffers and no tweening will happen.


Share this post


Link to post
Share on other sites

  • Advertisement