Gamestudio Links
Zorro Links
Newest Posts
nba2king Latest Roster Update Breakdown
by joenxxx. 10/14/25 06:06
Help!
by VoroneTZ. 10/14/25 05:04
Zorro 2.70
by jcl. 10/13/25 09:01
ZorroGPT
by TipmyPip. 10/12/25 13:58
Sam Foster Sound | Experienced Game Composer for Hire
by titanicpiano14. 10/11/25 18:45
Reality Check results on my strategy
by dBc. 10/11/25 06:15
AUM Magazine
Latest Screens
Rocker`s Revenge
Stug 3 Stormartillery
Iljuschin 2
Galactic Strike X
Who's Online Now
0 registered members (), 9,184 guests, and 0 spiders.
Key: Admin, Global Mod, Mod
Newest Members
joenxxx, Jota, krishna, DrissB, James168
19170 Registered Users
Previous Thread
Next Thread
Print Thread
Rate Thread
Page 1 of 5 1 2 3 4 5
different renderer? #94012
10/12/06 04:08
10/12/06 04:08
Joined: Oct 2005
Posts: 4,771
Bay City, MI
lostclimate Offline OP
Expert
lostclimate  Offline OP
Expert

Joined: Oct 2005
Posts: 4,771
Bay City, MI
well i posted this in the third-party tools, but in hindsight i should have posted it here, since it isnt necessarily 3rd party related, ok i figured id ask you guys youselves since matt told me he didn't think so i figured id make sure. Is there a way to disable 16 rendreing, and do the rendering through the use of a different engine, my question is because i prefer irrlichts rendering system, bloodline said he'd done it with ogre, but the a6 renderer still had shown through, so if there is a way to turn of a6 rendering, how do you go about doing it?

Re: different renderer? [Re: lostclimate] #94013
10/12/06 06:05
10/12/06 06:05
Joined: Jul 2000
Posts: 28,028
Frankfurt
jcl Offline

Chief Engineer
jcl  Offline

Chief Engineer

Joined: Jul 2000
Posts: 28,028
Frankfurt
Sure, you can implement any other renderer into A6, through a DLL plugin. That's what Matt is doing with his sphere engine. A6 won't "show through". However you'll need good C++ and DirectX knowledge for that.

Re: different renderer? [Re: jcl] #94014
10/12/06 06:34
10/12/06 06:34
Joined: Oct 2005
Posts: 4,771
Bay City, MI
lostclimate Offline OP
Expert
lostclimate  Offline OP
Expert

Joined: Oct 2005
Posts: 4,771
Bay City, MI
well what if we dont know all the inner workings of the engine like we programmed it? i am using irrlicht, and i dont want to rewrite my own rendering engine like him, i want to instead use a completely different, i understand it would use a dll, but how would i go about a6 to render at all?

Re: different renderer? [Re: lostclimate] #94015
10/12/06 06:49
10/12/06 06:49
Joined: Jul 2000
Posts: 28,028
Frankfurt
jcl Offline

Chief Engineer
jcl  Offline

Chief Engineer

Joined: Jul 2000
Posts: 28,028
Frankfurt
You first need an external renderer, from Irrlicht or whatever, that is able to render DirectX meshes. Then you use the render material event for calling the external render function with the current entity mesh. This way the external mesh renderer will draw the mesh into A6's back buffer, instead of A6's own mesh renderer. I think it would not make much sense with Irrlicht, which probably renders meshes slower than A6, but it would work.

Re: different renderer? [Re: jcl] #94016
10/12/06 07:57
10/12/06 07:57
Joined: Oct 2005
Posts: 4,771
Bay City, MI
lostclimate Offline OP
Expert
lostclimate  Offline OP
Expert

Joined: Oct 2005
Posts: 4,771
Bay City, MI
well i want to get features such as render to texture and such. and possibly get shaders to work on standard and extra along with dynamic shadowing. im not sure how fast each renders meshes.

Re: different renderer? [Re: lostclimate] #94017
10/12/06 08:53
10/12/06 08:53
Joined: Jan 2006
Posts: 1,829
Neustadt, Germany
T
TWO Offline

Serious User
TWO  Offline

Serious User
T

Joined: Jan 2006
Posts: 1,829
Neustadt, Germany
Oh, so we just can go this way? I tought about writing a function like (just exemple):

DLLFUNC var A6R_ent_create(xyz)
{
ent_create(xyz);
Entity* Ent = A6Render::getSingleton().getSceneMgr()->createEntity( "oli", "ogrehead.mesh" );
A6Render::getSingleton().getSceneMgr()->getRootSceneNode()->attachObject( Ent );
}

and then check in a linked list if position has changed, etc. I know, would not be the best solution, but ogre is really a great pice of code.

I tried that way, setting ogre´s rendering window not to auto create it´s window, but to use a6 rendering device. Didn´t work.

p.s I´m writing on a little allready running engine when I´m bored, so my skills may be not the problem; And I´ve taken a look on working with dx one year ago.

Re: different renderer? [Re: TWO] #94018
10/12/06 09:50
10/12/06 09:50
Joined: Jul 2000
Posts: 28,028
Frankfurt
jcl Offline

Chief Engineer
jcl  Offline

Chief Engineer

Joined: Jul 2000
Posts: 28,028
Frankfurt
No, that would be quite awkward. The official method is the following:

DLLFUNC int Render(void)
{
ENTITY* pEntity = (ENTITY*)ev->me;
BMAP* pSkin = (BMAP*)ev->render_map[0];
LPD3DXMESH pMesh = (LPD3DXMESH)ev->render_mesh;
LPD3DMATERIAL9 pMaterial = (LPD3DMATERIAL9)ev->render_d3dmaterial;
LPD3DXEFFECT pEffect = (LPD3DXEFFECT)ev->render_d3dxeffect;
IDirect3DDevice* pD3dDev = (IDirect3DDevice*)ev->pd3ddev;
Ogre_Render(pD3dDev,pMesh,pSkin,pMaterial,pEffect); // your own render function
return 1; // tell A6 not to render this entity
}

Now you assign this function to the material event:

ev->mat_model->event = Render;
ev->mat_model->flags |= ENABLE_RENDER;

That's all. Hope this makes sense.

Re: different renderer? [Re: jcl] #94019
10/12/06 10:06
10/12/06 10:06
Joined: Jan 2006
Posts: 1,829
Neustadt, Germany
T
TWO Offline

Serious User
TWO  Offline

Serious User
T

Joined: Jan 2006
Posts: 1,829
Neustadt, Germany
Ah, got a bulb over my head

Re: different renderer? [Re: TWO] #94020
10/12/06 13:20
10/12/06 13:20
Joined: Oct 2005
Posts: 4,771
Bay City, MI
lostclimate Offline OP
Expert
lostclimate  Offline OP
Expert

Joined: Oct 2005
Posts: 4,771
Bay City, MI
see you have a bulb over your head....
im in under my head....
well ill try what i can.

Re: different renderer? [Re: lostclimate] #94021
10/12/06 14:19
10/12/06 14:19
Joined: Jan 2006
Posts: 1,829
Neustadt, Germany
T
TWO Offline

Serious User
TWO  Offline

Serious User
T

Joined: Jan 2006
Posts: 1,829
Neustadt, Germany
Sry, it´s me again;

I sat up a simple test. But the render don´t get called:
Code:

DLLFUNC int ERender_Eentity()
{
error("Hello Urmel!");

// Get all data
ENTITY* pEntity = (ENTITY*)ev->me;
BMAP* pSkin = (BMAP*)ev->render_map[0];
LPD3DXMESH pMesh = (LPD3DXMESH)ev->render_mesh;
D3DMATERIAL9* pMaterial = (D3DMATERIAL9*)ev->render_d3dmaterial;
LPD3DXEFFECT pEffect = (LPD3DXEFFECT)ev->render_d3dxeffect;
IDirect3DDevice9* pd3dDevice = (IDirect3DDevice9*)ev->pd3ddev;


// Render (just a test, don´t know if it does sth)
if( SUCCEEDED( pd3dDevice->BeginScene() ) )
(...)

return 1;
}

DLLFUNC void ERender_Init()
{
ev->mat_model->event = (EVENT)ERender_Eentity;
ev->mat_model->flags |= ENABLE_RENDER;
}

dllfunction ERender_Init();



But the 'Hello Urmel' don´t apears; I tried Xerxes way, render_entities=ERender_Eentity;, but didn´t work either (got Urmel, but the ents didn´t disappear).

Blub´s damaged?

Page 1 of 5 1 2 3 4 5

Moderated by  old_bill, Tobias 

Gamestudio download | Zorro platform | shop | Data Protection Policy

oP group Germany GmbH | Birkenstr. 25-27 | 63549 Ronneburg / Germany | info (at) opgroup.de

Powered by UBB.threads™ PHP Forum Software 7.7.1