Gamestudio Links
Zorro Links
Newest Posts
AlpacaZorroPlugin v1.3.0 Released
by kzhao. 05/22/24 13:41
Free Live Data for Zorro with Paper Trading?
by AbrahamR. 05/18/24 13:28
Change chart colours
by 7th_zorro. 05/11/24 09:25
Data from CSV not parsed correctly
by dr_panther. 05/06/24 18:50
AUM Magazine
Latest Screens
The Bible Game
A psychological thriller game
SHADOW (2014)
DEAD TASTE
Who's Online Now
1 registered members (henrybane), 1,499 guests, and 1 spider.
Key: Admin, Global Mod, Mod
Newest Members
LucasJoshua, Baklazhan, Hanky27, firatv, wandaluciaia
19054 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: 27,986
Frankfurt
jcl Offline

Chief Engineer
jcl  Offline

Chief Engineer

Joined: Jul 2000
Posts: 27,986
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: 27,986
Frankfurt
jcl Offline

Chief Engineer
jcl  Offline

Chief Engineer

Joined: Jul 2000
Posts: 27,986
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: 27,986
Frankfurt
jcl Offline

Chief Engineer
jcl  Offline

Chief Engineer

Joined: Jul 2000
Posts: 27,986
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 | chip programmers | 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