Enthusiast game making journal
‹ Previous12
  • I'll probs retitle that if anyone cared

    I'm feeling i'm not getting enough feedback from ideas, cause noone to talk to really!

    So pretentious as it is, are any of you interested in a dev diary of sorts as I meander through the plethora of things i have to learn, with not enough hours in a day. I'd deliver in a kinda 'what i did today' kind of thing, but with notions of what to do next, what should be done and how i'm going to do it. I tend to have several tools in the box for a shitton of things but theyre all tools and you cant escape the needs for art (cept for awesome tools like xnormal, dDo and nDo)

    I won't just be following the same project all the time - atm i have a 'demo' to essentially show off unitys features to do, gives advertising to all the peoples work in the demo, but it's intended, when reaching high enough quality, to gather some good favour from who im advertising and everything i use goes to 'the big project' which as my current rate will be available in 2016.

    To add, i'll be redoing my marble game, the same gameplay there but much tighter, the final level added and then time to get both creative and pretty with presenation and add a bunch of new bonkers levels, mainly cause my stream of consciousness mindset is useful for making bizzare things. And i'm gonna make muzzys game look the fucking tits. And maybe even edge comp in a month or two

    I've already scribbled down stuff for wont of anything better to do, if you reckon its worth keeping a development record on here it could be intertaining and informative, will as little or as much techy gubbins (that mr chump can no doubt clear up) as you like

    I just figured i'd do it here as its the only place I know that at least a few people who can point at a feature and recognise it, and suggestions and suchlike always appeciated!
  • Dev diaries are always fine, shut up and do it.
  • "I'm interested in this."
    I am a FREE. I am not MAN. A NUMBER.
  • Will you be talking about your Journey game?
    I am a FREE. I am not MAN. A NUMBER.
  • The Journey game is looooog project, and a lot of what i'm doing now is pre-production in a way. The story in the game is linear but based on vast areas of open landscape, with several important structures, and some not so important, but as you're in such a large area (And everything human is ridiculously dead by now, you find clues to this shortly after starting the game)

    I love the idea of slightly leftfield game-attitude, the journey will, one hopes, blow many a mind with some sequences and i'll be using the finest bleeding edge technology I can find for it (And ive been reading stacks of academic papers for clues on how to go about it

    The issue is systems, im a one man job, i need to make systems that cooperate in the game that i have to do very little authoring of - say clouds, oceans, river and streams, what wildlife is left needs to react appropriately. Your communication with the outside needs to estabish quickly, as in its manner, and then as things develop the whole awakening psyche of the character needs to be modelled, turned into a self sustaining system, with enough wits to escalate or modify the system depending on proximity, and then what will happens. A volcano using a voxel grid needs to be self sustaining and escalate suitably over time to reflect what I suppose could be a finale. What I can do proceduraly means no more tiny level authoring which takes forever. That said, it seems like a lazy way to do it, but actually its not at all, like, say if you stick to a brdf on your ocean, then you can get a proper colour and specular return, particularly the one i'm using which calculates the sky radiance (which is the sunlight bouncing off water droplets in the atmosphere) and the irradiance scattering indirect light onto the ocean. This approach means when my new 'system' being worked on, will integrate it rather awesomely, which is terrain, and the guys latest shaders are amazing. You unify all your models in physically based shading and end up with a relative small number of well understood inputs, and get predictable output, that look the bomb (I said it before but The Order is a great example of what compute shaders and pbr will get you)


    The systems mean the game looks fucking great, so i'll be putting a lot of time (all of my time) into it hence my obsession with water, currently, its a very relevant system and masses of work has to go into for any game, cause crappy water just looks crappy, and in war-fucked washington state you need to see this destruction and how much is filled or not filled with water. And while i'm talking Oceans (and my ocean will take a LONG time, lots and lots of features and modes) there can be all sorts of rivers with accurate flow behaviour, you can paint that in on the water surface, with vertex colours or you can simulate it with houdini but rivers, they fascinate me, the lakes (much different dynamic to an ocean) very shallow pools or channels you can splash about in like crysis 3 - looking forwards to that too.

    Nevermind awesome fun stuff I had using Dice's translucency trick on a bed of water (i had to figure the lighting model out a bunch myself though, dicks), you'd get light scattered from behind the water waves, might be pretty

    And I mix all this cause why not, with quite a heavy free fourier transform algorithm Ocean users could have really spectacular waves (fft is pretty much the byword for cool oceans) at the cost of some frames, you could switch that out for a simpler perlin crossed for more wavey shapes and then add fine detail with normal maps - in fact the set of controls i'll be using will sport without doubt reflectance masks, i wondered what these were then remembered the classic way to get reflections from water, and these masks eliminate sides of the waves from the reflection so it makes it look like its lit properly - will be adding more pbr approaches and hopefully a marmoset skyshop integration which would be fancy

    Well there's a nice block of text regarding water - the final result i want to achive, and god bless shader forge for this is actually pretty possible and i'm quite psyched about that

    This is a long post, it could be longer but i'll spare you. If any of you have Unity skills going to waste i have several prototypes you can build on as i dont have time for it, and if theres questions, lemme know

    Also, should the idea please you you could sign into the 'make marble madness insanely good' initiative, in this case though, unlike the first few levels, you can go crazy, use weird fabrics and surfaces, you can decide how much traction, bounicess slippiness quite easily and i think that would be cool having people muck in. You give me the idea and some drawings and i'll make it

    This is probably very boring to read, i'll think of some screenshots for a bit!
  • "Today I ate beans and spun round on my chair for five hours. When asked why I wasn't working, I just replied 'compiling'."
  • Skerret
    Show networks
    Facebook
    die
    Twitter
    @CustomCosy
    Xbox
    Skerret
    PSN
    Skerret
    Steam
    Skerret
    Wii
    get tae

    Send message
    " 'compiling'."
    Look at this workstation! What a complete slob.
    Skerret's posting is ok to trip balls to and read just to experience the ambience but don't expect any content.
    "I'm jealous of sucking major dick!"~ Kernowgaz
  • tldr
    Come with g if you want to live...
  • Skerret
    Show networks
    Facebook
    die
    Twitter
    @CustomCosy
    Xbox
    Skerret
    PSN
    Skerret
    Steam
    Skerret
    Wii
    get tae

    Send message
    Keep posting Funn, this is your thread to do with as you please. I'll read it, need to get back in the swing anyway.
    Skerret's posting is ok to trip balls to and read just to experience the ambience but don't expect any content.
    "I'm jealous of sucking major dick!"~ Kernowgaz
  • beano
    Show networks
    Wii
    all the way home.

    Send message
    *bookmarked* #mustfix
    "Better than a tech demo. But mostly a tech demo for now. Exactly what we expected, crashes less and less. No multiplayer."
    - BnB NMS review, PS4, PC
  • g.man wrote:
    tldr

    I don't think you're the ideal audience to be honest, this thread may just bore you to tears

    The compiling joke made me laugh but i try to keep busy on my netbook if my desktop is grinding. Seems whatever field you fancy researching there's a shitton of material for it, often with very nicely supplied code to give you the idea. Guys like Eric Bruneton who do amazing work at making science make very pretty things (and as i keep saying, to any tech-adept artist or art adept programmer, go to the crc press website and download the supplemental code for gpu pro books, its magic) - ive spent most of the day still working on water, mainly work that stemmed from Erics work on a physically based lighting model for ocean surface lighting based on sun direction/atmospheric conditions. I was quite adamant about getting this in, even though it's definitely not the most practical of solutions in a game-play sense - but saying stuff like fft, brdf, ibl, scattering in participating media, get the graphics nerds excited so they make a bunch of cool stuff and gamers get to benefit from it

    While mentioning Eric, here's Proland, more of his and others' work in a more-or-less entire planet simulator. The guy who ported erics water to unity is now working on porting proland over, this is reallly quite an exciting prospect

    Theres quite a lot to water, but i think i got the hang of what I was doing, which is merging two 3d ocean approaches into one mighty beast of a water package, there should be updates soon, will hopefully make advances with the shader graph after I next wake up (This just to get them playing ball on a similar level), then the arty pretty options to add (these are easy and fun) and then the more sciencey stuff for those who simply will not do without a giant pile of realism. The fft water I explained is prime target for this as wether it be actually useful or not, fft models for calculating waves are still seen as the top of the pile - hence reading about light absorbtion in water (i'm assuming theres a formula for this based on depth, lighting and water quality, i read somewhere that the visibility goes down by thirds based on where youre looking bt whatever i'll get it.

    While i work out how to do that i'll do the arty stuff which is fun and means i can feck around in shaderforge for a few days. So! When the water's wrapped up onto the next thing i think i need to learn - Probably go back to doing game art for a month or so cause i really need material to even benefit from all this new lighting gubbins, but the water will take a bit and the upshot is i think a bnch of grind and frustration is out of the way - so pretty things will come!
  • Was said in jest Gunn.

    go for it

    g.man
    Come with g if you want to live...
  • More pics less words plz. And there's not enough sex or drugs in this diary.
  • Alright, well I can't promise less words, but I think youre right in saying more pics, so i'll post a few that illustrate what ive been saying above.

    Systems i'll be using and adapting over time:

    Eric Bruneton's fft ocean with his physically based BRDF:

    ocean.png

    Just for the hell of it, a pic from Proland which will echo my needs for large scale terrain generation:

    amara1.jpg

    Conversely, a more arty ocean i will be using as the flipside, with a degree of blending between both approaches at the artists discretion. This is entirely texture based, no procedural content, whereas the above is based on a very heavy (It can only reach acceptable framerates if done on the GPU) fast fourier transform approach

    sui_beta7.jpg

    I will be adding my own on-shader procedural wave generation for breaking up repeating patterns and adding the 'deep' swells, using perlin noise, which is quick to calculate. I'll be using 4D perlin noise, so it animates, but this is what perlin noise looks like (GTA5 used perlin noise to animate its water):

    231.jpg

    Fluid simulations to use as man component as volcano calculated on the GPU as a 3D texture rendered as volumetric participating media (Image is a lil primitive sorry):

    hqdefault.jpg

    Terrain using the shader and suchlike i'll be using for land, this pic isnt exactly AAA, but it was made within a day of the latest beta being released:

    attachment.php?attachmentid=89941&stc=1&d=1394022787

    Regarding talk of physically based shading, here's stuff i'll be looking forwards to fooling with - its materials that always use the idea of well emulated surface properties and visual principles, like refectivity and the characteristics of metals and the continuum towards dialectric surfaces, but first, physically based skin:

    title.png

    And now a lil palette of materials showing a range of glossiness, metallic and dialectric properties:

    ss_materials.png

    And then, of course, how these above images, all Unity, have been applied in another engine in a pretty game:

    2051289-718917_20130820_004.jpg

    More stuff on participating media, it's something i'm very interested in and am looking at using, here is Dice's (Used in the the battlefield games) translucent shader at work, I have an implementation and its quite lovely (Although this pic is a UDK implementation, but i'm also putting a lot of thought into how to generate maps for the ocean above in realtime for the effect, although the texture based version of the ocean should have this covered):

    3ds.jpg

    And clouds of course:

    NuajCover3.png


    And on the subject of udk and since you asked for pictures, and i'm currently musing on how to approach my quarter-done water shader (I'm waiting for a feature to be added to the editor so my graph doesnt have to be comprised of thousands of nodes), i'm thinking of converting a crapload of awesome UDK shaders over to Unity, since i now can - some samples:

    cloth01.jpg
    TreeLeaves.jpg
    crome01.jpg
    The below 2 btw, i absolutely love and i'll be doing a lot of vertex painting in future, and POM decals!:
    plaster02_s.jpg
    pom_decal01s.jpg


    And i'll leave it there for now, but there will be more, I assume, when more things are together in terms of stuff I myself made
  • Skerret
    Show networks
    Facebook
    die
    Twitter
    @CustomCosy
    Xbox
    Skerret
    PSN
    Skerret
    Steam
    Skerret
    Wii
    get tae

    Send message
    I really ought to start using Unity again...
    Skerret's posting is ok to trip balls to and read just to experience the ambience but don't expect any content.
    "I'm jealous of sucking major dick!"~ Kernowgaz
  • A bevy of decent artists on the forum getting their art thing on using Unity would be absolutely amazing, Unity gets belittled a lot, graphics-wise, and i find that very annoying because it's absolutely capable of doing all manner of beautiful things - you just don't get them handed on a plate like you do in other engines, you have to work for it, sometimes pay for a few things from the asset store, and understand how you're getting to a result
  • Oh and dont worry Spacegazelle, sex and drugs are pretty much some of the cornerstones of my life, in fact ive found amphetamines make you ridiculously productive. So i'll bring up the subject in detail eventually, i tend to keep my sex life to myself but if something spectacular happens and its both sexy and relates to my work, i'll chuck it in.

    Side note: If any of you are texture painters, especially as environment artists but even modellers/texture folk, get hold of filter forge this damn instant, its absolutely the bomb for endless amounts (assuming you have the filters) of material for your textures, and thats not just diffuse colour, but also your bump (Use them for heights in vertex animation or height-needed shaders like POM or tessellation), normal (you should know what these do), ambient occlusion (Theres a fun trick you can do with these to make maps for translucent surfaces), and even, and these took me surprise because they never occured to me - but reflectance masks - you use these when you're using these textures generated with bumpy surfaces, particularly waves, but you're using the old mirror method for getting reflections into your waves. Also a good source, PARTICULARLY if pbr/ibl appeal to you is gametextures.com

    Using the mirror method for waves gives you nice reflections of everything but if the sun is on the opposite side of the 3d reflective surface, it still looks like the surface is reflective when it shouldnt be! terrible right? You use these masks to apply to your other generated textures to mask out these reflections = much more realistic reflections

    If you want realistic dynamic reflections without the mirror method, you use an environment cubemap, Unity can generate these via its API, which is handy, but the face size needs to be tiny or no more performance  for you - my plan is however to use quite a low resolution cubemap for the environment to give good general reflections which are positionally accurate but very low res, and blend it with the mirror approach, giving the best of both worlds

    Theres also a method called screen space reflection which I may look at in future, it has a lot of issues but looks beautiful.. combining that would give great reflections for ay data that there is on screen, mirror reflection and cube/environment masks will take care of the rest

    And on the subject of reflectivity, and again physically based shading, i'll show you an example of how unity vanilla can be frustratingly shit with lighting, but asset store stuff is the fecking bomb (somethings on there cost 100+ dollars but many of them are incredible and would be worth a fuckload more if it was an art team doing a bespoke system for use in only one game)

    Example:

    Just Unity lighting

    7lS9o.png

    Now Unity lighting combined with image based lighting and physically based shading

    7lS6W.png

    Next up, when I can be arsed, i'm going to talk about water in great detail i think. The more academic amongst you might find it interesting. I wont talk about fft wave generation but i'll link you to an article or two now the JONSWAP spectrum used for the fft ocean i'm using

    Here's a picture of the Phillips spectrum (I wont be using):

    phillipsocean01.jpg

    Actually I might add the above as an option if feasible, it does run reasonably quickly

    Here's gerstner waves, which I irrationally hate

    attachment.php?attachmentid=71565&d=1382285795

    And if you REALLY want to know about ocean simulation, read Tessendorfs seminal paper on the subject which is pretty much the basis for all serious business research into wave generation, cept the boring ones

    And heres one of if not the most important article written on the subject of ocean water rendering

    But instead i'll cover the optical effects of water, and how to art them up. I'm still waiting on a guy to implement custom nodes/appending code manually to his tool output and i REALLY REALLY dont want to make the code into nodes because theres a lot of it. But I can go into optical effects for the surface (Both based on research papers and examples and artistic control and with any luck, melding successfully with the standard BRDF of the fft ocean) and the generation of shoreline flow textures which are quite a lot different to open sea waves
  • Escape
    Show networks
    Twitter
    Futurscapes
    Xbox
    Futurscape
    PSN
    Futurscape
    Steam
    Futurscape

    Send message
    I've an idea for an iOS game. I'll probably never make it.

    Ever messed around with Terragen, Laze?
  • Oh yeah, shittons! I was a huge fan of its daddies, Vista on the Amiga and Vista Pro on the PC. I just checked their site, didnt realise there was a version 3! I tend to use Vue for those things because I can integrate it with 3DS Max but I don't do stills anymore so previous versions of terragen became a bit useless to me. I will definitely have a good look at the site though, if you can export heightfields that would be very very useful for use with Unity's own terrain system (Even if just introducing high frequency but very low amplitude noise to a terrain extracted from World Machine or a 3rd party tool for Unity I use called World Composer which grabs real life elevation data and satellite imagery from across the world (pic):

    attachment.php?attachmentid=71904&d=1382454159

    I've had better results than that, mind

    Depending on the quality of its output and speed it may well prove to be the exact thing I was looking for to create panoramas for IBL, and those unwilling or have no need to buy Nuaj and just want the pretty static clouds

    Why do you ask?
  • Skerret
    Show networks
    Facebook
    die
    Twitter
    @CustomCosy
    Xbox
    Skerret
    PSN
    Skerret
    Steam
    Skerret
    Wii
    get tae

    Send message
    Those valleys are uncanny.
    Skerret's posting is ok to trip balls to and read just to experience the ambience but don't expect any content.
    "I'm jealous of sucking major dick!"~ Kernowgaz
  • Escape
    Show networks
    Twitter
    Futurscapes
    Xbox
    Futurscape
    PSN
    Futurscape
    Steam
    Futurscape

    Send message
    LazyGunn wrote:
    Why do you ask?

    I used it to make some islands for Op Flash. Eleventy years ago!
  • Skerret - i dont particularly like the image, just shows what world composer can generate, a better configured shader/environment/lighting could go a long way

    Escape - haha, that was a good idea. the tool i use to get geospatial data atm i think could be bested by terragen 3 to be honest, i'm wondering if the guy has an idea about splitting up big heightfields that i'd get from terragen into 4kx4k smaller heightfields to patch together. Woud mean not using one of his products but using the hell out of his other one - i really want to get cracking making a showcase scene to show people stuff off but it has kept stalling thanks to currently-hard-to-finish systems cause im waiting on certain tool developments. I'm gonna ask him on skype right now if I can, that would be so useful and I could actually start doing some fun stuff instead of reading endless research papers

    Of course that also means I get a new toy to play with \o/ (Terragen 3) and I think making the entire scene that way, including terragen clouds and all the good stuff means i'd have automatic environment maps and lightmaps.. possibly

    Ahh you're a genius, a day of filter forge and terragen 3 awaits

    Oh and if I can get the clouds in the environment map playing nicely with the volumetric cloud system, there will me much rejoicing
  • Enjoying this. I don't understand half of it but that's most of the fun of reading about it for me. A wee glimpse behind the curtain.
  • Glad you're enjoying it! I finaly got off my arse and onto the desktop and ironically enough am typing this because my desktop is compiling/importing haha

    One of the big issues i face in my game idea is level of detail, or LOD, for objects that will be numerous and spread into the distance, for, eg, trees. Trees are a complete fucker for all sorts of reasons, and i'll give you a few of them. For one, its hard to tell how detailed your tree should be close up, should it be pure mesh? (No because then all your tree models would be comprised of hundreds of thousands of polygons thanks to the leaves), or do you use billboards for the tree leaves and boughs? Should these be hand authored or generated in a tree maker, or use Unity's tree maker? Well I hate Unity's tree maker but it comes with some very useful shaders and they're adapted to reacting to wind (Fiddly vertex painting and setting texture coordinates (UVs) and then, you know there could be hundreds of thousands  needing to be rendered. Unity's tree maker is heavily integrated into the terrain system too, which is irritating at fuck because I want trees that DONT rely on unity's system on the terrain

    You cant render them all at full detail, even at low poly they'd be very slow, and whats even worse is that using billboards (This is just a square made of two triangular polygons generally with a partyly transparent texture on them) you have problems with depth sorting - If you imagine a game camera looking into the screen, how far it can see is the depth of the scene, every object it sees needs to be drawn in the right order, so it tends to draw everything starting from the back and then after increasingly close objects. Transparency fucks this all up because in a shader, which is going through one pixel at a time, it might not know where a transparent pixel of a texture is, or where what behind it is - this depth sorting can result in errors, things being drawn in the wrong order, two objects at similar depths flcikering because it doesnt know what to draw first (called z-fighting), and to fix this is computationally expensive

    Without clever tricks, drawing an entire forest can be ridiculously expensive, computationally, so i'm trying to find ways to make this faster. Ive been worrying about it for weeks so today I decided to do something about it. I've found a few solutions, clever use of billboarding (Converting a 3D tree into a a texture to be placed on a quad billboard, based on how far away you are) to 'imposters' (Similar to billboards but with more accuracy and geometry and generated in realtime so they are lit appropriately, or plain decimation (reducing the complexity of a tree based on how the tree is made simplified)

    The question is, WHEN to switch lods, and what your circumstances are, for example, if youre flying up quite high, and look straight down, if youre far enough for a lod change they may well be billboards - they wont look very good at all looking at them from straight down. Theres some nice community suggestions in the forum and im trying out some shaders I own but I came across a technique (I'm really hoping Chump can add his two cents to regarding this) by demoscene guru iq relating to lod being calculated based on the amount of a bounding sphere thats visible based on the viewers position - in this case looking straight down, the  bounding sphere would still be quite visible, giving a proper model, and then lod stages kick in as you look towards the horizon at any height, you could maybe calculate the lod based on a function of height and obscurance

    Since you guys like pictures, this is what the technique looks like:

    gfx00.png

    But you'd learn much more reading the article:

    http://www.iquilezles.org/www/articles/sphereproj/sphereproj.htm

    Not sure how practical this might be given the number of trees needed, but if it WAS valid and it wasnt too much of a hit on peformance, i could either have quite a good selection of LODs, meaning pretty trees all over the place, or hopefully even find a procedural/parametric tree generator that could lower complexity based on the coverage, even just clipping leaves/boughs when obscured

    I hope it works, and I hope someone who makes games can tell me if its not useful in this case so I dont waste time implementing it. For now though, i'll test what I found on the unity forum
  • Bounding box diagonal is normally good enough for figuring out rough screenspace coverage and LODing based off of that IMHO. Means you have to have tightly fitted bounds but that should be the general case anyway (to make sure visibility checking is as efficient as possible and isn't drawing things it doesn't need to).

    The switch point between LODs is the most obvious point where people will notice something odd going on - you may be able to crossfade between 2 LODs but that starts getting expensive. TBH, as long as the closest LODs look similar enough people probably won't notice (seriously, always just try with the cheapest/easiest solution first because you'd be amazed what people who haven't been primed to look for LOD pops just don't notice). Most jarring is often when the final LOD pops out and disappears completely when it hits a small enough screen size - so having an option to have the smallest LOD alpha fade in/out as it reaches the lower size limit might be a worthwhile investment - just to prevent small things on screen popping in and out.
  • Cheers for that! Regarding LOD production, i've been considering several ways to do it, the typical Unity method is just to blend between their treemaker trees to an internally generated billboard at a distance you can set. I find this pretty irritating and i've been looking at a lot of talk regarding alternatives, i'm about to try a shader selection I already own which has a few ideas on the solution, but while I try that out i'm thinking about how relevant dynamically generated impostors and volume objects - not true volume textures, just the original model sliced several times in 3 dimensions and interpolated to give an approximate look, are, and at what stage they should be employed

    You'd actually have to tell me what a bounding box diagonal is aha, but would it be faster to calculate a bounding box than a view-orientated disc/ellipse? Maybe Unity already has a bounds property for objects. Regarding lod pop-in, thats much the reason I want several stages of LOD, not just 2 or 3, with the most distant lod being faded perhaps (As this is usual Unity functionality I think). Theres a tree creator for Unity called Forester that procedurally generates trees and I wonder if I can use any screen coverage amount to drive the complexity of the trees via API
  • I found this quite neat for treesville but it does seem to need at least some close up LoD stages, if possible, and they dont seem to react to lighting which would need to be addressed, but at distance maybe perfect, and free!

    Here's a picture for you picture lovers

    attachment.php?attachmentid=83651&d=1390473275
  • Imma sit and read all of this properly at some point.
    Having a good idea of what Gunn is on about makes it even more impressive!
  • LazyGunn wrote:
    Cheers for that! Regarding LOD production, i've been considering several ways to do it, the typical Unity method is just to blend between their treemaker trees to an internally generated billboard at a distance you can set. I find this pretty irritating and i've been looking at a lot of talk regarding alternatives, i'm about to try a shader selection I already own which has a few ideas on the solution, but while I try that out i'm thinking about how relevant dynamically generated impostors and volume objects - not true volume textures, just the original model sliced several times in 3 dimensions and interpolated to give an approximate look, are, and at what stage they should be employed 
    I'd always recommend starting with the simplest method, assess the weaknesses (but always keeping an eye on "will the regular punter actually see/care about this?") and if there's a fix or improvement for that particular method, only at that point start to complicate the matter - and only if there's no easy fix go for an alternate method.

    TBH, I would have thought impostors would have been fine? If you've got any dynamic lighting you might need the impostor to render out as separate albedo and normal map, so it can react to lighting and shadow changes - but for the long distances it should be close enough, right?
    LazyGunn wrote:
    You'd actually have to tell me what a bounding box diagonal is aha, but would it be faster to calculate a bounding box than a view-orientated disc/ellipse? Maybe Unity already has a bounds property for objects.
    Just the distance from top-front-left of the bounds to bottom-rear-right - Unity is sure to have a bounding box for props.
    LazyGunn wrote:
    Regarding lod pop-in, thats much the reason I want several stages of LOD, not just 2 or 3, with the most distant lod being faded perhaps (As this is usual Unity functionality I think). Theres a tree creator for Unity called Forester that procedurally generates trees and I wonder if I can use any screen coverage amount to drive the complexity of the trees via API

    Probably - but remember you want as much as possible to be pre-calculated/cached, so that you don't stress the CPU at runtime.
  • Fair points, i think the bounding diagonal is a great practice, cant believe I hadnt heard of that before. I just spent the last couple of hours buggering about with Unity's terrain and tree system as I hadnt hithertoo attempted to render quite so many trees at once - Attempted to reach the density of, say the heavily forested area of Mt. Rainier national park in west usa, its very densely forested and very large view distances would be involved. I found the basic Unity terrain approach to tree lod fecking useless, or well, it would suit an fps fine cause you won't get an interactive vantage to the degree where you'll see the switch to billboards but from above, the billboard stage desaturates (It's not accurately shaded at all and forms a ring around the full res trees) and doesnt cope well with quick changes of perspective

    I didn't try the impostor system but as for whatever reason i'm intent on following pbr principles, then fucking with them (It's a nice little meta story for anyone who recognises it in my final game) i preempted a future issue and used a great foliage shader pack I own which will soon have pbr/ibl flavours so I figured i may as well go for it. It cured the badly shaded billboards for a start and made all used billboards (incuding trees) cast fairly decent shadows, his pbr project, Lux,  is open source and coming along well and it seems i'll be using it along with a few other pbr shaders for a majority of my materials (My ocean is, at least in one form based on a respected physical model, although i'll be adding more to this).

    The latest iteration of the terrain shader also respects the paradigm and integrates pbr methodology, cooperates with Lux making the idea of using those vegetation shaders attractive and im a big fan of that terrain system anyways, but i'm going off on a tangent, what I found was that short of finding a much better solution, i should be able to make the whole thing considerably lighter by populating areas densely with trees but keeping the high res models strictly for quite close up, then using hopefully a blend of the now correctly shaded billboards with the system a few posts above, which is very very fast, casts shadows and doesnt look terrible - i'm wondering if the range of vision makes even those unviable i could try and perturb the normal map (Each terrain tile has its own normal map to suggest detail you'd have lost from turning down the accuracy of the terrain) to give a sense of 'treeishness' - might work!

    I think another reason for trees hitting the framerate badly is the fact they all have colliders and but I don't want the player to interact with them, so i'll be a killjoy and manually place enormous invisible walls around forest boundaries and remove the tree colliders, fingers crossed that will be useful.

    A connected note is I know in crysis 3 they placed lighting nodes such that they would darken an area rather than lighten it, id have to look into that as if I want large areas of forest that I dont want anyone to enter i'd like to programatically darken the space between trees quite a lot.. perhaps a tile-wide mask for performing way overblown ambient occlusion in these areas could do the trick
  • Paul the sparky
    Show networks
    Xbox
    Paul the sparky
    PSN
    Neon_Sparks
    Steam
    Paul_the_sparky

    Send message
    I don't have the first fucking clue what Gunn is on about, but I do like me some pictures.
‹ Previous12

Howdy, Stranger!

It looks like you're new here. If you want to get involved, click one of these buttons!