0 registered members (),
1,094
guests, and 1
spider. |
Key:
Admin,
Global Mod,
Mod
|
|
|
Setting up ShadeC EVO ( vegetation, terrain, publishing etc )
#460457
07/01/16 20:57
07/01/16 20:57
|
Joined: Jul 2008
Posts: 2,107 Germany
rayp
OP
X
|
OP
X
Joined: Jul 2008
Posts: 2,107
Germany
|
Some "small" examples i made with shadeC EVO in action ( Hail to Boh_Havoc ): Info: On my Radeon HD4800 from 2008, the evo-example-scene runs with +-250fps in window mode (Win10).
Evo fix(?): 3runs githubYou wanna have at least some nice graphics and you're a shader noob ? ShadeC might be the answer here.Stuff like: HDR, DOF and and and... What version? ShadeC or EVO?Well it belongs to what youre planning to do. I give u some facts ( good and bad ones ): ShadeC- Terrain- Water- Nice object and PP shaders- no dynamic shadows for entitysShadeC EVO- No Terrain's ( see this Topic how to dirty "hack" terrain into )- No Water ( maybe we'll find a solution here next time ) edit 2021: Managed to create nice "faked" water (no reflections etc, but looking ok at least) - Real nice object and PP shaders- dynamic shadows for entitys BUT only with spotlights!- memory leak!!!(try 3run's version [link above])- wont publish without a small modTip:- Reset the DYNAMIC flag for big models ( for example houses, read this Thread to know why ) - Modify your shadeC files ( fixed folders, read this Thread to know why ) See page "6" for a full publishing help--------------------------------------------------------- Hi. Please somebody help here, iam pretty frustrated right now. Iam trying for hours to render a simple grass model. Never made outdoor stuff with shadeCEVO before. Why the hell it ignores the alpha-channel ? Better asked, how to "overlay" my grass model ? With the std-sc-material (from cars window) it looks strange like this ( ignore the blur thats caused from DOF ): //------------------------------------------------------------------------------
//----- USER INPUT -------------------------------------------------------------
//------------------------------------------------------------------------------
//assign skins
#define SKIN_ALBEDO (skin1.xyz) //diffusemap
#define SKIN_ALPHA (skin1.w) //alphamap
#define SKIN_NORMAL (skin2.xyz) //normalmap
#define SKIN_GLOSS (skin2.w) //glossmap
//...
#define NORMALMAPPING //do normalmapping?
#define GLOSSMAP //entity has glossmap?
#define ALPHA //entity has alphamap?
#define TRANSPARENT //entity alpha should be interpreted as transparent/translucent?
//------------------------------------------------------------------------------
// ! END OF USER INPUT !
//------------------------------------------------------------------------------
#include <scHeaderObject>
//custom code goes here
#include <scObject>
edit: -picture lost- With a std-normal/spec-sc-material it looks like this, ok but Alpha is ignored (#define ALPHACLIP wont make a difference) edit: -picture lost- //------------------------------------------------------------------------------
//----- USER INPUT -------------------------------------------------------------
//------------------------------------------------------------------------------
//assign skins
#define SKIN_ALBEDO (skin1.xyz) //diffusemap
#define SKIN_ALPHA (skin1.w) //alpha
#define SKIN_NORMAL (skin2.xyz) //normalmap
#define SKIN_GLOSS (skin2.w) //glossmap
#define SKIN_EMISSIVEMASK (skin3.y) //emissive mask
#define SKIN_COLOR (skin3.w) //(team)color mask
//...
#define NORMALMAPPING //do normalmapping?
#define GLOSSMAP //entity has glossmap?
#define GLOSSSTRENGTH 0 //glossmap channel will be set to this value if GLOSSMAP is not defined
//#define EMISSIVEMASK //use emissive mask? (formula: emissive_color = SKIN_EMISSIVEMASK * SKIN_ALBEDO)
//#define EMISSIVE_A7 // (optional EMISSIVEMASK addon) use emissive_red/green/blue for as emissive color? (formula: emissive_color = SKIN_EMISSIVEMASK * vecEmissive)
//#define EMISSIVE_SHADEC // (optional EMISSIVEMASK addon) OR use SC_OBJECT_EMISSIVE as emissive color? (formula: emissive_color = SKIN_EMISSIVEMASK * SC_OBJECT_EMISSIVE)
//#define OBJECTCOLOR_A7 // use diffuse_red/green/blue as (team)color using the colormask?
//#define OBJECTCOLOR_SHADEC // OR use SC_OBJECT_COLOR as (team)color using the colormask?
//#define ALPHACLIP //do alphatesting/alphacutout?
//#define USE_VEC_DIFFUSE //use diffuse_red/green/blue? (note: don't use with OBJECTCOLOR_A7 at the same time)
//#define ZPREPASS //do an early zbuffer prepass? Only makes sense for heavy ALU
//------------------------------------------------------------------------------
// ! END OF USER INPUT !
//------------------------------------------------------------------------------
#include <scHeaderObject>
// <-
// insert custom code here
// ->
#include <scObject>
Someone managed to render grass / tree leafs with shadeC EVO ? Some idea / help would be really nice ^^ edit: To reproduce my Problem, take two grass models ( one placed infront of the other ) and apply the car-glass-material. Then youll directly see it when walking around looking at the grass.
Greets
Last edited by rayp; 08/28/21 04:56. Reason: added general infos and changed title cause i made it sticky
Acknex umgibt uns...zwischen Dir, mir, dem Stein dort... "Hey Griswold ... where u gonna put a tree that big ?" 1998 i married my loved wife ... Sheeva from Mortal Kombat, not Evil-Lyn as might have been expected rayp.flags |= UNTOUCHABLE;
|
|
|
Re: ShadeCEVO simple grass (OVERLAY) ?
[Re: rayp]
#460459
07/01/16 21:35
07/01/16 21:35
|
Joined: Jul 2008
Posts: 2,107 Germany
rayp
OP
X
|
OP
X
Joined: Jul 2008
Posts: 2,107
Germany
|
Found some Workaround. I activate
sc_screen_default.settings.forward.enabled = 1;
And apply no shadeCEVO material to the grass. This way it gets rendered "ok". But it wont react to shadec-lights then, ahh sh* ! edit: Give up. ShadeCevo is nice for indoor Scenes, outside you can smoke it in your pipe! Implemented HeelX's SSAO now. Great looking effect. edit: You can smoke SSAO in the pipe too, slow as hell!
Last edited by rayp; 07/02/16 11:17.
Acknex umgibt uns...zwischen Dir, mir, dem Stein dort... "Hey Griswold ... where u gonna put a tree that big ?" 1998 i married my loved wife ... Sheeva from Mortal Kombat, not Evil-Lyn as might have been expected rayp.flags |= UNTOUCHABLE;
|
|
|
Re: ShadeCEVO simple grass (OVERLAY) ?
[Re: rayp]
#460464
07/02/16 12:21
07/02/16 12:21
|
Joined: Jul 2008
Posts: 2,107 Germany
rayp
OP
X
|
OP
X
Joined: Jul 2008
Posts: 2,107
Germany
|
To clear things i made another screenshot of the problem. First screenshot might be missunderstood. To reproduce simply duplicate the glass of the car and fly around looking at them. Transparent parts are not rendered through other transparent parts. I managed it like said in the post above to render without material. Then i added the shadeC Terrain (to shadeCevo). So i had grass and Terrain in shadec evo. But then strange "small" graphic artifacts appeared. Short: Rendering the grass without shadecevo-material on a shadeC-terrain with EVO running isnt an option. Goal here simply is (at least) some good/"fast" graphics in a8. With things likes shadows, pp's, Terrain and grass. edit: I dont want the grass transparent btw, i just want it like OVERLAY.
Last edited by rayp; 07/02/16 12:48.
Acknex umgibt uns...zwischen Dir, mir, dem Stein dort... "Hey Griswold ... where u gonna put a tree that big ?" 1998 i married my loved wife ... Sheeva from Mortal Kombat, not Evil-Lyn as might have been expected rayp.flags |= UNTOUCHABLE;
|
|
|
Re: ShadeCEVO simple grass (OVERLAY) ?
[Re: rayp]
#460465
07/02/16 12:51
07/02/16 12:51
|
Joined: Jun 2009
Posts: 2,210 Bavaria, Germany
Kartoffel
Expert
|
Expert
Joined: Jun 2009
Posts: 2,210
Bavaria, Germany
|
Well.. deferred rendering (which shade-c uses) makes it practically impossible to use soft transparency due to the way lighting and scene composition are handled. That's the main downside. At the same time, however, it allows for much faster lighting, an overall consistent look and things like shadowmapping, ssao, screenspace reflections, etc. can be implemented quite easily.
Now, in the case of shadec evo, there actually is a workaround implemendet to support one layer of transparency by using subsampling (only a small performance impact).
Long story short, if you want to use transparency, go with either 1-bit-alpha (alphatesting enabled) or limit yourself to said one layer of transparency.
Last edited by Kartoffel; 07/02/16 12:52.
POTATO-MAN saves the day! - Random
|
|
|
Re: ShadeCEVO simple grass (OVERLAY) ?
[Re: Kartoffel]
#460466
07/02/16 13:25
07/02/16 13:25
|
Joined: Jul 2008
Posts: 2,107 Germany
rayp
OP
X
|
OP
X
Joined: Jul 2008
Posts: 2,107
Germany
|
Thanks for the info, Kartoffel. I managed to display some grass now. To be honest no clue why it worked this time. Now i need to test, if it will work with the "dirty ShadeC Terrain usage" (Alibaba mentioned some days ago). But gettin all this together working is hell for me... edit: What do u mean here? U mean this activated yes?
#define ALPHACLIP //do alphatesting/alphacutout?
?
Last edited by rayp; 07/02/16 13:28.
Acknex umgibt uns...zwischen Dir, mir, dem Stein dort... "Hey Griswold ... where u gonna put a tree that big ?" 1998 i married my loved wife ... Sheeva from Mortal Kombat, not Evil-Lyn as might have been expected rayp.flags |= UNTOUCHABLE;
|
|
|
Re: ShadeCEVO simple grass (OVERLAY) ?
[Re: rayp]
#460468
07/02/16 14:02
07/02/16 14:02
|
Malice
Unregistered
|
Malice
Unregistered
|
1-bit-alpha (alphatesting enabled) Jumping in half informed --> tga is 32 bit alpha meaning grays scale or fading alpha maps . I would assume 1-bit is 2 step alpha black 1-bit full transparent white 2-bit full obliqueness. Edit> such as the OVERLAY flag does by picking one color on the map/skin and making it fully transparent.
Last edited by Malice; 07/02/16 14:06. Reason: Typo's and such
|
|
|
Re: ShadeCEVO simple grass (OVERLAY) ?
[Re: alibaba]
#460475
07/02/16 18:30
07/02/16 18:30
|
Joined: May 2008
Posts: 2,113 NRW/Germany
alibaba
Expert
|
Expert
Joined: May 2008
Posts: 2,113
NRW/Germany
|
Okay, I sadly did not found the old version, but this is the way I use it in my current projects:
ENTITY* sc_ent_softSprite(ENTITY* ent, VECTOR* color, int inFadeDist, int inSoftness, int pType)
EXAMPLE:
sc_ent_softSprite(me, vector(128,128,128), 1, 1, 0);
You need to activate forward rendering. If you want shadows to work correctly, you need to set the alpha lower than 100. For further information look into "sc_entity.c". There you can also find some other useful shader Hope that's helpful
|
|
|
Re: ShadeCEVO simple grass (OVERLAY) ?
[Re: alibaba]
#460477
07/02/16 19:08
07/02/16 19:08
|
Joined: Jul 2008
Posts: 2,107 Germany
rayp
OP
X
|
OP
X
Joined: Jul 2008
Posts: 2,107
Germany
|
Thanks for your time and the example. I did not manage to get the shadeC Terrain working in evo, so i applyed a normal/spec shader to the terrain-modelfile. Dont know if this will be much slower than using a hmp file? This way i have no tile-mapping, but a Terrain without graphic Errors. Sure it Looks a lot more worse than the shadeC Terrain shader. Somebody knows where the White - border Comes from?
Last edited by rayp; 07/02/16 19:14.
Acknex umgibt uns...zwischen Dir, mir, dem Stein dort... "Hey Griswold ... where u gonna put a tree that big ?" 1998 i married my loved wife ... Sheeva from Mortal Kombat, not Evil-Lyn as might have been expected rayp.flags |= UNTOUCHABLE;
|
|
|
|