Chen's doc on Halo3 materials has info - may not be the same as the system in 4 and Reach, but presume it's ballpark:LazyGunn wrote:... For anyone who knows, was that particular metal effect in halo 4 (and reach i think) the result of a cook torrance lighting model? (Im talking about that very particular kind of shading and specular highlight on painted metal surfaces) I hope so,cause i found one, its jolly exciting. And a ward shader!
Skerret wrote:If anyone is interested, Call Connect is sitting on about 111,000 downloads.
djchump wrote:Chen's doc on Halo3 materials has info - may not be the same as the system in 4 and Reach, but presume it's ballpark: http://www.bungie.net/Inside/publications.aspx http://www.bungie.net/images/Inside/publications/presentations/lighting_material.zip Not sure which specific metal effect you're after - MC's armour hero effect will be overkill for props and no idea how easy it is to add SH irradiance/GI support to Unity or whichever engine you're using, cos IIRC this was tied into Bungie lightmap baking server farm. They way they broke it down into low, mid and high-freq lighting is very nice (but high-cost, so hero effect only). You'll want some form of directional reflection in there for shininess (e.g. blended full cubemap, as screenspace normal spherical envmap doesn't really cut it for flat planes or reflections that change as you move around a static object, but can be good enough for IBL on particles or low-detail props, especially animated things that are constantly moving and only need a cheap hint of reflectivity, rather than full, correct reflections and the cost of a cubemap texread). For high-freq specular, Cook-Torrance (Torrance-Sparrow) used in Far Cry 3, CodBlops etc. - more expensive that Blinn-Phong (which itself is nicer than naive phong). NB - Blinn-Phong can give decent results if normalised:  http://renderwonk.com/publications/s2010-shading-course/hoffman/s2010_physically_based_shading_hoffman_b.pdf http://www0.cs.ucl.ac.uk/staff/j.kautz/GameCourse/04_PointLights.pdf AFAIK, normalising BP makes it energy-preserving so the specular highlight break up less at distance and glancing angles, which (with decent mips for normal maps) helps reduce aliasing and "light speckle" on normal mapped surfaces as they get further away.LazyGunn wrote:... For anyone who knows, was that particular metal effect in halo 4 (and reach i think) the result of a cook torrance lighting model? (Im talking about that very particular kind of shading and specular highlight on painted metal surfaces) I hope so,cause i found one, its jolly exciting. And a ward shader!
dynamiteReady wrote:@Gunn - Very cool lighting and textures... I especially like the scratch surface of the table in the foreground, as it takes the like rather well (little to no specularity), and sells the picture.
RamSteelwood wrote:so isn't now a good time for you to update it with a 'click here to buy more levels' button? edit: Apologies if that sounded arsey, it wasn't meant to be any sort of veiled criticism...i genuinely think, you've given people something for free and it seems quite popular, why not try to then make some money from it that is totally 'opt in'...
Cool! Oren Nayar and Minneart are nice ways to get anisotropy into the BRDF - especially as there's a bunch of places you can dig up coefficients to easily switch up from velvet to steel or other surface effects. Costly though, depending how many coefficients you want to useLazyGunn wrote:Excellent, cheers for that! I'm just getting my feet wet really but definitely reading a lot about IBL and physical lighting, i found a 'cheap' oren nayar which enthused me greatly, so, its all about digging and learning.
Cool - majority of the lighting comes down to the pixel shader and what different textures are used on the meshes (e.g. spec, gloss and how those maps are used in the calcs). Even the more complex systems like deferred lighting, fully deferred rendering, light index deferred etc., the light pass or g-buffers are still rendered to with shaders at the end of the day.Unity's engine is unity, hah, if you have the pro version its pretty extensible, if you dont.. well, i dont so i make do, but these lighting models are available as you can write vertex/fragment shaders as normal, sans a bit of syntax here and there.
Yeah, to blur a cubemap you'd want to do it offline either at bake or post process in some art package. You could do it dynamically in -shader at the cost of multiple tex reads and an average or gauss blur, but that'd be expensive and only viable if it absolutely *had* to rapidly respond and change according to game actions - otherwise the runtime could CPU blend cubemap textures and upload to shader each frame.Unity has light probes, that work with it's Beast lightmapper to create ambient light volumes, not exactly proper GI but its nice, not sure how well it can contribute to other aspects of lighting. Writing cubemaps can be automated in the pro version, so.. yeah need pro again, dont know any way to blur or blend them in-shader anyways, but i'd certainly like to know how (I've tried changing the mipmap level for my static cubemaps and it kind of works for a certain degree then its seams e'erwhere).
I dunno man - I'm not a tools guy so I leave the offline bake to our editor, I'd leave it totally to Unity tools or maybe find a plugin if I didn't like it myself. If the Unity lightbake or GI wasn't doing what I wanted, I'd probably look for a different engine before trying to roll my own tools pipeline because I jsut don't really want to get into the backend process. Figure it's even more important for one-man outfits like yourself (or small indie teams etc.) to pick the battles to get most bang for buck from their dev effort. I reckon you get more dynamic and interesting gameshine out of decent shaders, dynamic lights and fancy use of shader constant tweaking on the fly so that's where I figure you get the most return for dev code effort in the final look of the game. But hey, if tools and light bake is what tickles your biscuit, then go for it!Finally, i'm vaguely tempted to sink a year into making U4's gi solution work for unity (sparse octree voxels?), im reading a pile of papers on it. It looks straightforward enough from the papers and pics, to conceptualise, but how do i program that!
No probs - I have absolutely no artistic talent so you're light years ahead of me there cos I can't draw for shit  I need to start learning so that, like yourself, if I get the urge for a spare time project I can do the code and artwork and have full control over the look!You're a good ways ahead of me on this stuff Chump, even if i wasnt covering a bajillion bases i have noone to tell me any fecking thing, assuming i could understand it at all in the first place, but i mostly understood that post and it was hugely appreciated so cheers! Moar pics soon as i've finished blocking in the critical level detail
It looks like you're new here. If you want to get involved, click one of these buttons!