Search Unity

  1. Megacity Metro Demo now available. Download now.
    Dismiss Notice
  2. Unity support for visionOS is now available. Learn more in our blog post.
    Dismiss Notice

--PolyWorld-- Low Poly Toolkits and More!

Discussion in 'Assets and Asset Store' started by QuantumTheory, Apr 9, 2014.

?

Would you consider purchasing prefab PolyWorld scenes, crafted by me, and published in the store?

Poll closed Aug 18, 2015.
  1. Yes, only if they are budgeted for performance, utilize existing packages, and have enough variety.

    4 vote(s)
    44.4%
  2. No, I just want new packs.

    5 vote(s)
    55.6%
  1. RangePlusOne

    RangePlusOne

    Joined:
    Dec 6, 2014
    Posts:
    123
    I would yes :)
     
    twobob likes this.
  2. MIK3K

    MIK3K

    Joined:
    Sep 10, 2014
    Posts:
    144
    Not me so much because I use World Machine with Polyworld so have an endless supply of terrains, but might be handy for others.

    Off topic, but looks like you have some new competition - http://forum.unity3d.com/threads/mesh-materializer.293796/#post-1960269

    Quantum Theory is still my favorite though :) Especially knowing you work at Ubi. They take a lot of heat from gamers but create some of the most amazing tech and games ever.
     
  3. twobob

    twobob

    Joined:
    Jun 28, 2014
    Posts:
    2,058
    Abe's odyssey FTW!
    The extra channels and optimiser look interesting on that other thing but does not offer anywhere near the volume of sheer quality content of the QT packs. Apples and Oranges. But the pure scriptage is certainly in the ballpark of "being similar since it's vertex based"
     
  4. QuantumTheory

    QuantumTheory

    Joined:
    Jan 19, 2012
    Posts:
    1,081
    I like the clean UI and how fast he renders the terrain to vertex colors, both of which I have on my to-do list to clean up.
     
  5. Batsy

    Batsy

    Joined:
    Feb 16, 2015
    Posts:
    1
    This is really awesome :) I got some experience with 3ds Max but i don't get it how to create low poly object. Like chests, trees, stones, even characters, anything else. Which primitive that i need to use exactly ? And is there a way that creating low poly terrain in Unity without any asset ? Your asset is great but i want to learn how it's made.
     
  6. twobob

    twobob

    Joined:
    Jun 28, 2014
    Posts:
    2,058
    erm perhaps this isn't the right thread for that conversation, however, simply purchasing the asset will reveal all the magic since the source code is included. Plus a bunch of models way cooler than I could have made myself.
     
  7. QuantumTheory

    QuantumTheory

    Joined:
    Jan 19, 2012
    Posts:
    1,081
    You guys like free stuff, right? Check out this deal:


    Until 3/31/2015, if you purchase, or have purchased, PolyWorld: Ancient East, you're eligible for a coupon for my new course on Advanced Environment Texturing Methods in Photoshop at no additional cost!

    Links:
    PolyWorld: Ancient East
    Advanced Environment Texturing Methods in Photoshop Course

    In this course, I'll take you through the techniques I've used and refined over the years to help me create very high quality, high resolution tiling photoreal diffuse textures using only Photoshop. I'll start by explaining all the techniques individually, then move on to showing how I use all the techniques to take a texture from start to finish.

    Best results are achieved using a pressure-sensitive tablet. Many techniques shown here don't require the latest version of Photoshop.

    The course won't take hours to complete and you'll see results immediately. I'm confident the methods I use aren't found anywhere else online, so I'm certain you'll learn something new!

    Here is a demo video of one of the lessons:

    To redeem, simply email support at qt-ent.com with a valid invoice number for PolyWorld: Ancient East!

    Offer Expires 3/31/2015!
     
  8. twobob

    twobob

    Joined:
    Jun 28, 2014
    Posts:
    2,058
    I have CS2. Will muddle through. There are several ways to skin a sows ear.
     
  9. QuantumTheory

    QuantumTheory

    Joined:
    Jan 19, 2012
    Posts:
    1,081
    CS2's just fine.
     
    twobob likes this.
  10. QuantumTheory

    QuantumTheory

    Joined:
    Jan 19, 2012
    Posts:
    1,081
    Just rendered out the features video for Ancient East!

     
    Socrates likes this.
  11. MIK3K

    MIK3K

    Joined:
    Sep 10, 2014
    Posts:
    144
    Could I use the modify color script for different variations of NPCs? I guess I could check myself, but that would be very cool to show in one of your videos if you could have different colored animals or a bunch of enemies with variations in colors (and maybe throw in some variation in size to accentuate it).

    Kind of noobish, but I thought I read somewhere you could vary the vertex color of prefabs without having to create a separate unique prefab for each one?
     
  12. QuantumTheory

    QuantumTheory

    Joined:
    Jan 19, 2012
    Posts:
    1,081
    Yes you can use it for characters in the same way it's done for props. Due to the fact that you're changing mesh data, the prefabs are either replaced or made unique.
     
  13. MIK3K

    MIK3K

    Joined:
    Sep 10, 2014
    Posts:
    144
    I had MegaScatter in my head. I mean the actual asset from the megafiers guys, although that describes what's going on in my head sometimes. I have no idea how this stuff works, but their scatter program lets you take a single model (like a flower or tree) and procedurally scatter it while varying it's size, rotation, and color variations based on vertex colors.
     
  14. QuantumTheory

    QuantumTheory

    Joined:
    Jan 19, 2012
    Posts:
    1,081
    Right. Chris has a very special system in place to handle all this stuff and its memory implications. That, and he's a genius.
     
    OnePxl and twobob like this.
  15. twobob

    twobob

    Joined:
    Jun 28, 2014
    Posts:
    2,058
    see below
    after fresh import into already populate project I get the following when I open terrain conversion window

    Code (csharp):
    1.  
    2. IndexOutOfRangeException: Array index is out of range.
    3. QT_ExportTerrain.OnGUI () (at Assets/Quantum Theory/Polyworld/Editor/QT_ExportTerrain.cs:186)
    4. System.Reflection.MonoMethod.Invoke (System.Object obj, BindingFlags invokeAttr, System.Reflection.Binder binder, System.Object[] parameters, System.Globalization.CultureInfo culture) (at /Users/builduser/buildslave/mono-runtime-and-classlibs/build/mcs/class/corlib/System.Reflection/MonoMethod.cs:222)
    5.  

    any clues. it locks up. I will hack at it.
    blank.JPG basicTerrain.JPG uniqueData.JPG simpleHierarchy.JPG
     
    Last edited: Feb 19, 2015
  16. twobob

    twobob

    Joined:
    Jun 28, 2014
    Posts:
    2,058
    hmm okay. it's grabbing the wrong object?

    Weirdness? I think those terrains all share the same "data" though hmm....

    Okay... it really does look like it is something to do with terrains sharing data.

    wrongObject.JPG

    it really doesn't like it. at all will. make a unique dataset for each....

    EDIT: Aaaand immediately it works.
    Okay edge-case found. it incorrectly indexes multiply referenced datasets.
    Making all terrains have unique data fixes this.

    so - don't share data between terrains

    (it will in fact attempt to reference index 0 but the list is reverse sorted maybe and so be pointed at the last "index reference" in the list so they don't match I think, something like that)
    However I still have an issue...

    GotTheWrongName.JPG

    as you can see the name is unique. any clues? will dig

    EDIT:

    Well. I will be dipped in poop and candy coated. I never realised you meant the GAMEOBJECT name.
    doh.

    OhTheGameObject.JPG

    more helpful errors please? :D
    ah I see I highlighted where I copied the more helpful error code and pasted in into line 129.

    Cheers mate

    Don't leave your Terrain GameObjects name as "Terrain". That would be bad.

     
    Last edited: Feb 19, 2015
  17. QuantumTheory

    QuantumTheory

    Joined:
    Jan 19, 2012
    Posts:
    1,081
    Thanks for taking the time to dive in. I've learned a few things regarding terrain handling that I have on my list of things to investigate. The terrain converter needs to get optimized. I tried to squash as many bugs and use cases as I could, but a couple are still in there.

    One reason the conversion can take awhile is that it's creating an OBJ file, writing it to disk, then reimporting with import options. Rendering the texture is a sensitive hack also. Both I have ideas on and should result in much faster and reliable data.
     
  18. twobob

    twobob

    Joined:
    Jun 28, 2014
    Posts:
    2,058
    I did have a question. any way of baking in the vertex colors from one LOD to the next?
    I will request the SIMPLE LOD author propagate the information but thought I would ask.

    Basically, obviously, all the sub LODS are white ;)

    but the ones that aren't are great :D

    LOD0.JPG

    fail.JPG

    EDIT: Do you save the interim Isometric Bitmap data for example. That would be handy

    EDIT EDIT: Or, possibly better, take an Isometric of the Mesh, Once its rendered and colored and offer that as the diffuse. That would open up a world of shaders with the nice soft Vertex blending pass already complete. Which could be applied to the mesh directly or sub-copies easily. I suppose it will be a pain for the mesh split thingy (which I intend to use) but I dunno. seems like a good idea at the time ;)
    Fixed in the LOD tool
     
    Last edited: Feb 19, 2015
  19. RangePlusOne

    RangePlusOne

    Joined:
    Dec 6, 2014
    Posts:
    123
    I have a question/problem here: I try to run my model through the poly world tool, but it doesn't actually execute (there's no model in the designated folder either). The one on the right should be the faceted model. Any tips or tricks I could be missing here? not_faceted.JPG
     
  20. twobob

    twobob

    Joined:
    Jun 28, 2014
    Posts:
    2,058
    try giving the gameObjects unique names? I see you have one the same. Is your mesh appearing inside another gameobjects folder?

    I run "Everything" to check for anomalous placement, but I would drop a "Debug.Log(gameobject.name)" in a few places (as above) and check it is the right object...
     
  21. RangePlusOne

    RangePlusOne

    Joined:
    Dec 6, 2014
    Posts:
    123
    The model that is on the left is the original, and when I press "Convert to PolyWorld Mesh" I doesn't compile or anything, simple spits out another duplicate Mesh_LOD1 at 0,0,0. The -Faceted model does not appear in the designated folder either.
     
    twobob likes this.
  22. twobob

    twobob

    Joined:
    Jun 28, 2014
    Posts:
    2,058
    @RangePlusOne Yeah, I had a very similar experience with Mesh Animator once. That time it was something to do with the models animations naming causing the prefab to bug out. Sounds like a "nothing" index or naming bug to me. Author fixed it.

    If you throw across the model and the scene I will debug it. PM me a dropbox. Can't say fairer than that.

    @QuantumTheory

    Working with other author, hopefully should have compression and colors sorted out very soon.
     
    Last edited: Feb 20, 2015
  23. twobob

    twobob

    Joined:
    Jun 28, 2014
    Posts:
    2,058
    So...

    A few oddities of the mesh have been highlighted during the decimation phase.
    at the dark end of each of these lines you will note an odd line that appears to Z intersect the other triangles. I can't decide if this is "Editor Visual Artifacts" or a symptom of what I outline below? (this is with Export as Triangles at 1/4 res)

    This is before any adjustments are made. just as created by QT PolyWorld.
    unusualMesh.JPG

    Looking at the mesh from "the front" looks like this

    Schermafbeelding 2015-02-19 om 14.57.47.png

    but if we look under the hood (whilst stripping)

    Schermafbeelding 2015-02-19 om 14.57.55 copy.png

    Would you say that this is "Intended" winding? or an oversight?

    Either way it hates being deconstructed and immediately falls to Swiss Cheese (could attach long technical explanation as to why, sufficed to say it will require an extra pre-mangle pass to make do-able right now)

    The author of Simple LOD has kindly fixed the color propagation problem; has undertaken to work on trying to unpick your meshes in a few days time; has implemented the interface fixes I provided for the next update; has undertaken to assist in the creation of a batch function - so as to properly take advantage of your chunking facility.

    All in, this is a good match of technologies, I figure a rolling 5x5 256m grid with 4x4 (or 3x3) chunking and (2 or) 3 LODS (about 450 - 1200? pieces) would give me what I was hoping for in terms of highly optimised switchable floor chunks. Most of those pieces would just be tiny. I would do some calcs but I think 225 - 400 LOD objects is reasonable. Only actual tests will tell.

    Regardless of my application of your technology, the adjustments to aid decimation would be a good thing. If something really obvious leaps out obviously I will share.
    If you can share the reason for the layered construction I would be appreciative, am scrying QTExportTerrain for wisdom. It may be decimatable as-is with post-processing.
     
    Last edited: Feb 19, 2015
  24. twobob

    twobob

    Joined:
    Jun 28, 2014
    Posts:
    2,058
    Geometrically logical Mesh Splits

    BOTTOM LINE: It is currently pretty impossible to equally split any terrain -> mesh conversion that - initially - goes over the 65k boundary. (due to oddly shaped pieces)

    A) you currently enforce square terrains
    B) generally they exceed the 65k vertices limit and need to be chunked up internally anyway when using above 1/8 res
    C) You provide chunking, that is ostensibly provided for culling purposes (but laterally LOD)

    In some cases: Currently you Convert -> Internally Chunk , Then rechunk later on at the users behest. In others just simply do a second chunking pass.

    However as far as I can see I do not get neatly shaped chunks afterwards when you cut that second stage.

    This has a drawback - the shapes produced as a result are not actually that useful..

    you can see here (FIGURE 1) that the cutting creates unhelpful slivers of mesh, Not optimal to waste an LOD group on this.


    So my suggestion is when you realize you have to split the terrain at any time, split it into power of two equal tidy parts.
    If you have to go to 10 splits later on bump it up to the next Power of Two and split it logically at that point in this same, geometrically equal, manner.


    I can see no point splitting it the current way, Other than "it works". Should it work in this way?

    I did look to see if you recombined the meshes before doing the split but it looks like you

    //for every meshfilter we got from the targetGO initially in the scene..​

    rather than recombining?
    meshSliver.JPG

    Anyways? Wouldn't it make a lot more sense to create neat chunks and is it supposed to?


    Below is my previous point about it being a Power of Two Function in some way.
    QtExportTerrain
    Code (csharp):
    1.  
    2. // Let's make this a handy power of two divisor widening our range a bit. Less chunks overall in general.
    3.   int[] chunkVal = new int[] { 128, 64, 32, 16, 8 }; //the chunk multiplier.
    4.  

    Thoughts on that?

    Many thanks

    We could be really fancy and repopulate that later with a series derived from the terrain size if we had that data... or maybe more sensibly: why not just provide a mip path style reduction, like with the resolution. That does a bit of math to ensure we don't allow greater than 65k since "Mesh.vertices is too large. A mesh may not have more than 65000 vertices." and I don't believe this occurance is error handled at the moment.

    The end user won't mind seeing gory float details in the final dimensions I don't think, the chunk total count is the slider value at that point I suppose? Idle thoughts.

    FIGURE 1: A Sliver of mesh
    lessChunks.JPG

    An uneven split of 4

    another4WaySplit.JPG

    With me correctly coding the powers of two AND EXPORTING AT A LOW ENOUGH RES TO NOT GO OVER THE BOUNDARY I could achieve: An even split of four

    CorrectlyGenerated4Chunks.JPG
     
    Last edited: Feb 20, 2015
  25. twobob

    twobob

    Joined:
    Jun 28, 2014
    Posts:
    2,058
    Okay, further to the above.

    Here is my basic plan taken - manually - to its current, best result.

    Splitting a terrain into 4 equal meshes (I could have done more but this was manual labor) and then assigning the relevant pre-rendered LOD from PolyWorld to each distance. Only Two LODS were done as this was the highest res that can be achieved to get equal sized pieces (owing to the above report on initial mesh spitting)

    So basically -
    LOD 0 100% 1/8 Res 4 sub-tiles tiles per main tile.
    LOD 1 90% 1/6 Res 4 sub-tiles tiles per main tile.
    15% Cull

    LOD-terrain-tile-group.JPG

    The LOD groups are calculated per sub-tile.

    Gives us:

    LOD-Lo-Res.gif
    You can see the LOD switch kicking in in the center. And a couple of tiny mismatches in the edge position data.
    This would be far less noticable at higher resolutions (and wouldn't happen in the compressed version). I would be tempted to not even fix it and put a colored plane underneath. The holes in the compression can be masked - at distance - in the same way. This is the very cheapest implementation, I want cheap

    However some kind of LOD implementation like this would make much high resolutions feasible to deliver if still tricky to store and stream. And whilst not perfect it currently wipes 1/2 million vertices off of just a simple 3 tiles scene. you see the attraction.

    Thoughts on that?

    Here it is pictured with a simple brown colored plane under the meshes for now.
    masks perfectly. This is with 5 tiles of 4 64m subtiles each with 2 LODs.
    EDIT: I did 9 tiles no problem (with 4 LOD soon I hope?) That's a lot of verts even at lo res.

    But as you can see the numbers bear me out.


    MuchBetterNumbersAgain.JPG
    Super fast. Worth it?
     
    Last edited: Feb 20, 2015
  26. QuantumTheory

    QuantumTheory

    Joined:
    Jan 19, 2012
    Posts:
    1,081
    Shoot me the info that exists in the debug console by going to Window->Console. I need more information than this. I assume this is a skinnedmesh and an LOD.
     
  27. twobob

    twobob

    Joined:
    Jun 28, 2014
    Posts:
    2,058
    TL: DR;
    Would you consider making the splits in your meshes geometrically symmetrical and based on "powers of two" please, when importing terrains that exceed 65k points output; the output of the chunking is very unhelpful otherwise as it is uneven.

    Many thanks for your consideration.
     
  28. twobob

    twobob

    Joined:
    Jun 28, 2014
    Posts:
    2,058
    You might wonder, Why on earth do I want this so bad? well. I would really like to be able to stream this kind of stuff. (Different 256m2 tile types for example)

    However to make that happen we need low draw calls and reasonable total build (and asset) size.
    Other issues aside I pushed on to see what a complete solutions numbers might look like.

    Please note this is the 1/8th resolution version and a higher res version would push more numbers, not the 4x more one might expect though, more like double close up and unaffected far away. which is perfect for the geometry issues.

    5x5 grid LODMeshWorldGrid.JPG

    4 subdivisions per square
    LODMeshSubmeshes.JPG
    LOD on the chunks
    LODMeshSubmeshes-LOD-Chunks.JPG

    Some numbers

    LODMeshWorld.JPG

    Very decent and totally deliverable.

    Size? The Terrain sub-chunks come in at 6.4 Mb for all LOD,
    so 256 Meters Square at 1/8 + 1/6 res = 6.4Mb

    That's uncompressed and very decent.

    Which gives us in total

    ***Player size statistics***
    Level 0 'Assets/__scenes/Fantasy.unity' uses 2.2 MB compressed / 11.1 MB uncompressed.
    Total compressed size 2.2 MB. Total uncompressed size 11.1 MB.

    Textures 4.6 mb 44.3%
    Meshes 4.0 mb 38.3%
    Animations 0.0 kb 0.0%
    Sounds 256.2 kb 2.4%
    Shaders 317.7 kb 3.0%
    Other Assets 11.0 kb 0.1%
    Levels 92.9 kb 0.9%
    Scripts 912.9 kb 8.6%
    Included DLLs 138.0 kb 1.3%
    File headers 122.0 kb 1.1%
    Complete size 10.4 mb 100.0%​

    WorkingBuild.JPG

    A fully walkable immersive world with custom LOD for circa 2mb (Heck I left in the footstep sounds) is pretty good.

    Thanks for listening.

    EDIT: Now playable

    http://kaycare.co.uk/games/fantasy/
     
    Last edited: Feb 20, 2015
  29. QuantumTheory

    QuantumTheory

    Joined:
    Jan 19, 2012
    Posts:
    1,081
    Indeed, meshes with vertex colors are dirt cheap. Your memory footprint can be smaller by stripping out the unused data like UVs and maybe tangents. Reduce draw calls by going with baked lighting, or maybe even deferred rendering with hdr enabled.

    If you're map is 5x5, the ground could be less than 25 draw calls because it's a cheap shader and it should be batching with one material. If you're doing some post effects stuff like antialiasing or what not, that'll boost it up.

    In conclusion, I want to do what you need. Enhancing the terrain and character LODing will take some time.
     
    twobob likes this.
  30. twobob

    twobob

    Joined:
    Jun 28, 2014
    Posts:
    2,058
    Yeah. I did not tidy up my materials and in fact I turned all types of batching off just to make life extra hard X¬)

    Excellent news. Thanks so much for your excellent support last night too.
    I am getting pretty close to a stream-able solution I think.
    Got the build down to 2119kb and there is plenty to trim off of that. I am happy with that as a kernel size to stream further content.

    Hero. You.
     
  31. twobob

    twobob

    Joined:
    Jun 28, 2014
    Posts:
    2,058
    Line 99 TerrainExport

    for the next release - whenever - make it
    Code (csharp):
    1.  
    2.  foreach (TerrainCollider t in tcs)
    3.  {
    4.  //if the two terrain datas match but we aren't looking at the same gameobject..
    5.  if (t.terrainData && t.terrainData.name.Equals(terrain.name) && t.gameObject != terrainObject.gameObject)
    6.  {
    7.  
    To cover the case of the data being missing from the collider.
    Regards,
     
  32. Kurando

    Kurando

    Joined:
    Aug 14, 2013
    Posts:
    5
    Hey,
    could someone tell me, if PolyWorld is compatible with UMA (Unity Multipurpose Avatar)?
    Or could someone test it for me by converting a character made with UMA into a PolyWorld-model and post a screenshot here in the forum?
    Would like to buy a PolyWorld-Pack, but first I would like to know, whether it's compatible with UMA ;-)
    Thank you!
     
  33. twobob

    twobob

    Joined:
    Jun 28, 2014
    Posts:
    2,058
    hmm gonna be tricky. the mesh is made on the fly I believe.

    At what stage would you apply the conversion? At start-up every time?

    Questioning if this is possible/practical
     
  34. twobob

    twobob

    Joined:
    Jun 28, 2014
    Posts:
    2,058
    To work around the issue of uneven initial exports one can use a Terrain of 128m2 in size and export at half (1/2) resolution assuming not too much vertex detail. This would then allow for sub-chunking as usual with the higher resolution meshes. :) joy

    I did that, and went the extra mile and tried out the Simple LOD decimator on a 1/2 res mesh.

    Create LOD levels and use LODGroup: Finished! LOD meshes were saved under Assets/LODMeshes/.
    LOD 0: 32441 vertices, 17992 triangles .24 compression
    LOD 1: 28823 vertices, 14261 triangles .56 compression
    LOD 2: 27526 vertices, 13128 triangles 1.0 compression
    All the meshes end up with no holes, Once I dropped the new sliders all down to 0.5 for sensitivity.

    with much nicer results. So whilst not a huge vert saving, 20% is 20%, on the first LOD, which gives a nice buffer before actualy dropped resolution on the export - which affects geometry..
    decimatedLOD1.JPG
    So, lessons learned. Use a smaller terrain. Meshes compress Okay.
     
    Last edited: Feb 22, 2015
  35. QuantumTheory

    QuantumTheory

    Joined:
    Jan 19, 2012
    Posts:
    1,081
    Just a heads up.

    I'm in the middle of updating the PolyWorld packs to be Unity 5 compatible. Some good news:

    1. No more IBL in the material slot. Just use everything enlighten is doing in the Lighting tab. (New shaders required)
    2. Enlighten GI actaully makes a vertex-colored world look gorgeous and makes a big difference from the current version.

    Semi- bad news:
    1. Shadows are calculated differently. Backfaces won't cast shadows. A custom shader with backface culling off has been added. Any surface that's not correctly casting shadows will need a unique material with this shader assigned. Not a huge deal. Only use it in this circumstance.

    I'll post a couple screenshots when it's done rendering.
     
    twobob likes this.
  36. MIK3K

    MIK3K

    Joined:
    Sep 10, 2014
    Posts:
    144
    Hey Mr. Quantum Theory. Not really PolyWorld related (which is awesome), but more related to your other assets because I don't see a forum for your terrains. Played some Destiny (Bungie) and admired the skyboxes and backgrounds and then remembered I had your Desert asset pack and didn't really appreciate the 2,000 polys for each mesh until I loaded the demo scene and checked the triangle count and was blown away how low it was versus how much better it looks than standard Unity terrain. So gears and pulleys inside my skull started creaking and groaning under the weight of trying to figure out how to use this stuff.

    Then I found your website and that very awesome (and FREE!!) sceneview bookmark script which will come in handy. Going to pick up your clouds asset and maybe one of your other terrain packs (probably the Rocky Hills because of your blog post) and then try to figure out how you make your terrains look so good with so few polys.

    Anyway, thanks for those assets you make, the sceneview script, the texturing tutorial which I just sent you an email for the buyers of Ancient East.
     
  37. QuantumTheory

    QuantumTheory

    Joined:
    Jan 19, 2012
    Posts:
    1,081
    Thanks! I should take a look at Destiny's terrain..

    Just a heads up: each terrain pack comes with the RAW heightmaps so you can use each terrain as a Unity terrain if you wanted to. Also, each pack is planned to get a revamp with better textures and splatmaps. Can't say when though.
     
  38. twobob

    twobob

    Joined:
    Jun 28, 2014
    Posts:
    2,058
    Further to that I tried a few tools and did manage to get some pretty decent numbers on 3.2k of polyworlded terrain mesh. (25x128m2 chunks)

    I have played Destiny on the Playstation 3? maybe? The terrain on the console I played it on is no better than anything we chuck out of Unity, Which platform specifically I wonder did he mean? EDIT: I went off and watched some videos. It is nicely realised on some platforms.
    TerrainCompare.JPG
    Some numbers on that 3.2 array: Highly manageable.

    3.2k.jpg
     
    Last edited: Feb 26, 2015
  39. MIK3K

    MIK3K

    Joined:
    Sep 10, 2014
    Posts:
    144
    Hey TwoBob - I actually played Destiny on the PS3 and even on that old machine was just admiring the work the artists did on the skyboxes and background models - kind of like Quantum Theory's 2,000 poly terrain meshes in his other packs that look like 10,000+ poly meshs with the normal and color maps (or whatever it's called). Their Umbra occlusion culling and lighting is equally impressive with zero lag on enormous maps.

    The shadows though are the blockiest things I've ever seen in any game (PS3 we are talking about), but I gladly take that because of how good the rest of the game looks - http://images.eurogamer.net/2013/articles//a/1/6/9/4/3/8/8/ps3_003.bmp.jpg
     
  40. twobob

    twobob

    Joined:
    Jun 28, 2014
    Posts:
    2,058
    Yeah. I read quite a few reviews. Basically they melded nice flat "Halo" style 2d backdrops, and huge buildings/cliffs/whatnot against a very nicely detailed terrain. For me, the actual details on the terrain are what really made it. Tiny pebbles, bits of fern and gorse. Those shadows are appalling.

    "Enormous maps", hmm not so IMHO, cleverly constructed, pretty massive worlds but in the main I felt the worlds were intentional "constrained" to enhance the FPS experience, and probably rightly so. However, I would not list them as "massive", just, "really big". Still, you are right, decent FPS on big mappage.

    A lot of the destiny terrain looked "rim-shaded" to me, reducing the need for actual "differest contrast values" to be stored in the textures, en-cheapening the deal. The texture resolution is circa/sub 1024 I would say however and getting up close shows a distinct lack of near-detail. I showed one of the "better" shots in that comparison shot and on one of the worlds certainly the terrain details is very lacking. Still, Overall, the experience I would list as "Pretty darn breath-taking". On the next gen platforms certainly.

    Back to QT's work however, I would cite http://bit.ly/AETMP as a decent place to start looking for clever texture ideas of the order displayed in his packs.

    The actual inspiration for my work on the super low cost terrain slabs is more of less inspired by looking at the early destiny stuff and wondering how cheap I could get a massive terrain as mesh.

    Enter PolyWorld. Which now actually opens far more possibilities than I even originally envisioned, the sign of a nice asset. Inspirational.
     
    Last edited: Feb 26, 2015
  41. MIK3K

    MIK3K

    Joined:
    Sep 10, 2014
    Posts:
    144
    Yes, I signed up for that course thanks to Quantum Theory's generous offer for the Far East pack. Gotta make some time to watch how a professional does it.

    I worded that Destiny thing wrong. Maybe more like streaming in a massive world smoothly that is medium size areas connected by corridors, but extremely impressive on a PS3. The earth level just keeps going on and on as I do more missions and must open up new areas (?) or maybe just areas I never found before. But the art - just wow. And they must be using a lot of background low poly meshes to be affected by the lighting and not all just painted on the skybox.
     
  42. twobob

    twobob

    Joined:
    Jun 28, 2014
    Posts:
    2,058
    yes, yes and yes to that.
    Immense art team. Hats off, My personal fave touch was the way the menus moved towards you ;)
    Oh to be an artist.
     
  43. twobob

    twobob

    Joined:
    Jun 28, 2014
    Posts:
    2,058
    This is now "solved"

    @QuantumTheory
    Whenever I try to combine meshes on the paving I get horrible Z fluttered results.

    Any clues?

    I would prefer 1 draw call over the 100 it will take without the combine, to do the path.

    CombineMess.JPG
    On a lighter note.

    Procedural Infinite tiled world with models, Less than 3Mb. Nice.
    Under3Mb.JPG
    50ThousandTreeBambooForestIn2Mb.JPG
     
    Last edited: Mar 26, 2015
  44. atomworks

    atomworks

    Joined:
    Sep 30, 2013
    Posts:
    2
    I can't use the Polyworld Mesh Converter... I'm getting this message (see below) which seems unrelated to those that have been mentioned before in the thread. What should I do? Cheers!

    Code (csharp):
    1. NullReferenceException: Object reference not set to an instance of an object
    2. UnityEditor.EditorGUI.DrawPreviewTextureInternal (Rect position, UnityEngine.Texture image, UnityEngine.Material mat, ScaleMode scaleMode, Single imageAspect) (at C:/BuildAgent/work/d63dfc6385190b60/Editor/Mono/EditorGUI.cs:4176)
    3. UnityEditor.EditorGUI.DrawPreviewTexture (Rect position, UnityEngine.Texture image, UnityEngine.Material mat, ScaleMode scaleMode, Single imageAspect) (at C:/BuildAgent/work/d63dfc6385190b60/artifacts/EditorGenerated/EditorGUIBindings.cs:663)
    4. UnityEditor.EditorGUI.DrawPreviewTexture (Rect position, UnityEngine.Texture image) (at C:/BuildAgent/work/d63dfc6385190b60/artifacts/EditorGenerated/EditorGUIBindings.cs:658)
    5. QT_ConvertMesh.OnGUI () (at Assets/Packages (Third Party)/Quantum Theory/Polyworld/Editor/QT_ConvertMesh.cs:56)
    6. System.Reflection.MonoMethod.Invoke (System.Object obj, BindingFlags invokeAttr, System.Reflection.Binder binder, System.Object[] parameters, System.Globalization.CultureInfo culture) (at /Users/builduser/buildslave/mono-runtime-and-classlibs/build/mcs/class/corlib/System.Reflection/MonoMethod.cs:222)
    Also, everything was looking fantastic until I tried to switch on shadows, not everything Polyworld has gone pink! Shader issue I imagine but no clue how to fix it. The demo scenes also are mostly pink.

    Code (csharp):
    1. Shader error in 'QuantumTheory/VertexColors/IBL/Diffuse': failed to open source file: 'QT_Cubemaps.cginc' at line 25
    Code (csharp):
    1. Shader error in 'QuantumTheory/VertexColors/IBL/Reflective': failed to open source file: 'QT_Cubemaps.cginc' at line 34
     
    Last edited: Feb 28, 2015
  45. twobob

    twobob

    Joined:
    Jun 28, 2014
    Posts:
    2,058
    Are are those files actually present?

    Re the 1st error I note the params: "UnityEngine.Material mat, ScaleMode scaleMode", this leads me to the conclusion the the mangled shader (via material, owing to missing include) could be bailing out there, unexpectedly throwing.

    Does this happen on all models?

    Which leads back to my 1st question
     
    Last edited: Feb 28, 2015
  46. OnePxl

    OnePxl

    Joined:
    Aug 6, 2012
    Posts:
    307
    You moved the PolyWorld dir to 'Assets (Third Party)', try it without doing that.
     
  47. atomworks

    atomworks

    Joined:
    Sep 30, 2013
    Posts:
    2
    As I read twobob's comment I realised it was exactly what OnePxl pointed out. It was in subfolder... In my quest to keep a tidier project folder I made a rookie error.

    Thanks for the help both of you. It is very much appreciated.
     
    OnePxl and twobob like this.
  48. QuantumTheory

    QuantumTheory

    Joined:
    Jan 19, 2012
    Posts:
    1,081
    Odd. There might be a rogue triangle in there. I'll take a look.
     
    twobob likes this.
  49. QuantumTheory

    QuantumTheory

    Joined:
    Jan 19, 2012
    Posts:
    1,081
    Yep. The errors are because I hard coded it to look in a folder for the UI imagery. I have code to change that so you can put it anywhere, but the packs are not updated yet to take advantage of it.
     
  50. twobob

    twobob

    Joined:
    Jun 28, 2014
    Posts:
    2,058
    Thanks man.
    I really would prefer those paths over the ones I ended up making.
    (in my defense it looks better light-mapped without that horrible shadow artifact :p)

    LeavesFallOnPath.JPG
     
    Last edited: Mar 2, 2015