Search Unity

  1. If you have experience with import & exporting custom (.unitypackage) packages, please help complete a survey (open until May 15, 2024).
    Dismiss Notice
  2. Unity 6 Preview is now available. To find out what's new, have a look at our Unity 6 Preview blog post.
    Dismiss Notice

Fluidity - NextGen Fluid Dynamics - [ RELEASED ]

Discussion in 'Assets and Asset Store' started by smb02dunnal, Oct 22, 2013.

  1. operator23

    operator23

    Joined:
    May 17, 2013
    Posts:
    14
    Just wondering, is it just the shader that is the cause of this package being DX11 only? Do you plan on releasing this for anything other than DX11 after the competition?

    Thanks!

    -G
     
  2. smb02dunnal

    smb02dunnal

    Joined:
    May 5, 2012
    Posts:
    439
    Sorry, I don't have any plans to release a version of Fluidity for anything less than DX11 (unless DX10 is popular, but I'm not convinced :D).
     
  3. BuildABurgerBurg

    BuildABurgerBurg

    Joined:
    Nov 5, 2012
    Posts:
    566
    unless DX10 is popular .. .hahhahaha

    are you working on a water demo?
     
  4. smb02dunnal

    smb02dunnal

    Joined:
    May 5, 2012
    Posts:
    439
    My sentiments exactly ;)

    Fluidity liquid? It's being worked on yes. But I'm working on many things, and planning a move at the same time, so I'm not getting as much free time as I would've liked. :(
     
  5. BuildABurgerBurg

    BuildABurgerBurg

    Joined:
    Nov 5, 2012
    Posts:
    566
    No worries Alex :)

    what's the road map for Fluidity?

    "Fluidity liquid?" yes sir :)

    Keep up the great work Alex
     
  6. smb02dunnal

    smb02dunnal

    Joined:
    May 5, 2012
    Posts:
    439
    First of all I want to fix the issue of instantiating fluid volumes at run time, it's quite a biggy, I'm planning on getting this submitted on Thursday this week (yes I've finally got a bit of time to look at Fluidity again :D )

    I have a bunch of other features in the pipes, but I think I'm going to prioritize them a little bit or they'll never get done. Mesh handling is next, that means, mesh emitters and mesh collisions.
     
  7. lazygunn

    lazygunn

    Joined:
    Jul 24, 2011
    Posts:
    2,749
    I don't know if this is a pain to ask but the volume rendering demo (no 5?) is driving me mad because i swear that could be something so useful the mind boggles, i just dont know what for yet! Can i use a 3D GPU noise generator to make it do things. As you maybe know i'm a tad ocd about volcanos but volcanos a few weeks after the lava bit. Ridiculous amounts of fumes and smoke. I'm searching google up and down and cant afford to buy anything to set me straight on the matter at (in the asset store the 'turbulence library' looks like maybe the right idea?

    I'm hypothesising out of my frankly a bit ignorant mind that the textures used to drive these could also form a mask for a light cookie of the type used by the bespoke (as you mentioned before) shadow solution 'Sunshine' to get 'god rays' through the cloud layer and even in the volcano plume, complete with shadowing.

    If that's all nonsense you may disregard, im thinking ideas with not a lot of education but this would look.. bloody mindblowing. Can demonstrate with sex volcano pictures. Atm i'm using Nuaj to do the clouds/godrays (i hate that term) thing but im not sure the creator can offer enough support as theyre very busy

    Good luck with the move though!
     
  8. smb02dunnal

    smb02dunnal

    Joined:
    May 5, 2012
    Posts:
    439

    Haha I have included it for a purpose :) It's an efficient framework for anyone wanting to take up ray marching, readily integrated into unity with all the extra stuff needed to mix with rasterized geometry.

    You don't necesarily need a GPU 3d noise generator, although if you want one, I've attached one I use below :) A word of warning though... VERY ALU HEAVY!

    Personally, I prefer to precalculate a repeating noise volume on the CPU, and store it for later use (around 32^3 is good enough, store noise in R16_FLOAT format gets decent precision vs bandwidth usage).


    ( NOTE: You'll have to change the extension on the include file to .cginc or something similar )

    View attachment $SlowNoiseComputerGPU.shader
     
  9. lazygunn

    lazygunn

    Joined:
    Jul 24, 2011
    Posts:
    2,749
    Assume you're talking to someone who is EXTREMELY DUMB (which i am about these things) and could you as quick as possible explain this? You're currently improving my day yet more haha. The gpu thing coming up is simply so I can get a bunch of different noise output to get a good sense of the colossal amout of smoke going upwards in interesting ways (This is no small ambition) but thankyou hugely for that! Im sorry if I come back with more qns ahah

    Right this should be fun! I hope
     
  10. smb02dunnal

    smb02dunnal

    Joined:
    May 5, 2012
    Posts:
    439
    Rather than calculate noise on the GPU at run time, you can do all the heavy lifting offline, by computing the noise as you would do at run time, but offline, storing the results in a volume texture. Then you simply need to lookup this texture at runtime. The format of texture you use, is completely up to you, I just said what I think works best for performance vs quality.
     
  11. lazygunn

    lazygunn

    Joined:
    Jul 24, 2011
    Posts:
    2,749
    I'll look it up!

    Edit: A quick read helped a lot! The idea of doing it on the GPU is bacause of the animation needed, more or less a cross between something as 'placid' as http://www.youtube.com/watch?v=Daz21tMfSRw

    And scary as http://www.youtube.com/watch?v=n6dDesUPkMo

    But either way not straightforward I feel, but since I finally gave myself a break to mess around with fluidity for volcanoriffic efects I can see in the tool lots of fun things to do

    Edit2: Operation Make Decent Volcano is on! Thanks to this. At least i've got billowing columns of ash although theyre a bit lacking in detail, oh well i'll figure something out. Assuming I can instantiate that a few times and more dusty shapeless fluid to fill the plume out, the clouds they would tend to contribute to could be made decently easily i hope. By giving a fluid an edge texture i'm assuming that will add detail to it? As this was exactly what I was hoping for really, animated noise to give an effect of detail to billows
     
    Last edited: Jan 28, 2014
  12. smb02dunnal

    smb02dunnal

    Joined:
    May 5, 2012
    Posts:
    439
    I think the main thing missing from Fluidity that will really sell the effect you're after is self shadowing...

    You should be able to get a bit more detail by enabling vorticity confinement upping the confinement scale though.
     
  13. lazygunn

    lazygunn

    Joined:
    Jul 24, 2011
    Posts:
    2,749
    I think you're definitely right about the self shadowing to a degree, the vorticity is another good point. After staring at volcano videos for hours last night i saw that at the phase, there is an explosion followed by very rapdly and high volume billowing outwards smoke which drifts into the rest of the flume, almost like each time an event. The smoke in this way is kind of short, and get consumed into the rest of the plume. The explosion is highly detailed but so the gas becomes part of the plume if becomes a little more homogeonous as it rises/drifts into the main plume. It's almost like in ternms of life time, if the emitter can emit fluid explosively then stop, somewhat randomly, and each time it re-emits its a slight different direction (Although most explosions seem to be in similar directions) then a few emitters emitting randomly (plus explosion sounds and particle based rock/lava explusion) might be able to give a good effect

    This is all pure hypothesis Iive just woken up and pondering) but today's goal, and possibly quite a lot of day's goal, will be getting this looking right

    Do you have any ideas regarding self shadowing? Curiously I do have a paper on shadowing volumes in a gpu pro book although no idea if it's relevant. As far as I can tell the unity asset best suited for outside shadowing is Sunshine but since I dont own it i wouldnt know! All I know if people like it and it creates its own direction shadows for a volumetric sunlight kind of thing

    Edit: Is there an api for making the above happen?
     
    Last edited: Jan 28, 2014
  14. lazygunn

    lazygunn

    Joined:
    Jul 24, 2011
    Posts:
    2,749
    Oop nevermind my stupid questions, this is absolutely awesome, i'll have videos and annoying questions up pretty soon, but this really is brilliant, what's the clear lack which is fundamental to the effect is, as you say, self shadowing, and directional illumination in general, and i'm having an odd z-order thing happening too, but i'm not sure you anticipated scale (my simulation is 17000 units high) although it does run fine. Definitely far more impressive than I was expecting. Just really at the start of things i'd imagine i'll read the docs and see if I can get some more variations to the smoke but this really is the dogs knackers and a good example for fluids to go upwards haha

    In fact i'll even do the unheard of and leave you an actual asset store review when i've full reckoning of the package (Just so I can explain why its awesome fully)
     
  15. lazygunn

    lazygunn

    Joined:
    Jul 24, 2011
    Posts:
    2,749
    Result of all-night Unity tomfoolery

    $Volcano1.jpg

    along with the fine work of other asset makers (terrain/world composer, relief terrain pack, nuaj) this kind of thing implies my project could end up pretty spiffing! early days of course, but i suppose i could join the number asking for new features (when i think of ones i'd particularly like other than illumination (unless this is there and i missed it) and self-shadowing for dense clouds like ash)
     
    TooManySugar likes this.
  16. smb02dunnal

    smb02dunnal

    Joined:
    May 5, 2012
    Posts:
    439
    Wow, I'm impressed. Looks amazing. When I do self shadowing, I will be adding a variable density parameter, so thicker gases can occlude more light.
     
  17. lazygunn

    lazygunn

    Joined:
    Jul 24, 2011
    Posts:
    2,749
    The plume itself is kind of placeholder as i realise I can do a ton more with it already, in fact i was amazed at how suitable it looked because i wasnt really expecting the effect to seem so authentic

    One thing I do wonder is introducing fine detail to the billows which is why I was blithering about 3D textures earlier, in the case of volcanos there's volcanic explosion, followed by rapidly expanding billowing gas/smoke that i suppose retains its cohesion proportional to its lifetime or energy. The overall shape fludity can create is great for the simulation but would there be a way to introduce that finer detail? (I was talking about 3d gpu generated textures because it'd be ostensibly fast and animated)

    The other thing I can think of is the fumes persisting over quite some time, despite having no energy or role in the reaction (in terms of the reaction speed parameter) other than some proportion of it drop due to gravity, follow a wind force or the direction it was travelling in. When it's like this it no longer has any cohesion, but i suppose for any smoke that does leave visible traces in the air some sense of persistence like this would be mighty (i'm saying for any smoke, obviously not cause it happens to suit volcanos well, of course.. aha)

    Your self shadowing parameter sounds ideal and if you were to consider the above suggestion there could be a relation between density and persistence duration (not just trying to make it sound enthusing for self-motivated ends of course)

    Edit: hold on, thick moment just had, could the density as you described it itself be influenced by a texture and factors like age and energy?
     
    Last edited: Jan 29, 2014
  18. smb02dunnal

    smb02dunnal

    Joined:
    May 5, 2012
    Posts:
    439
    Yes, density calculated at run time would look something like this, (g_density * alphaAtPoint).

    Adding more detail via noise is possible as well. You wouldn't have to continuously build the noise texture on the GPU, infact I'd recommend creating a tiled 3D texture offline using 6D perlin noise. Maybe this is something I can look into, and include a basic 3D texture in the package, as I've done this kind of thing before!
     
  19. lazygunn

    lazygunn

    Joined:
    Jul 24, 2011
    Posts:
    2,749
    If you could that would be a massive help, as i'm coming back to aiming at as much as my computer can do while staying over 30fps, so all the nice stuff, which i didnt learn while fooling around with mobiles for ages!

    So yes I suppose if you could offer a route to implementation it'd be an education and a tool in the armoury should i want to do more with it, which is ideal

    Bit cheeky but do you have any idea whenabouts you'll be able to give the thing the attention? Just so i know what i'm doing, basically, and will the volume be shadowing(this just occurred) and self shadowing with Unity lights? I got the impression you'd be using a third party thing like Sunshine earlier so pondered on where money should go

    Edit: Also! is there any reason why this might act a bit funkily with the RTP terrain shaders regarding z-order etc (didnt know who to ask first) as it's drawing over terrain that occludes it using RTP
     
    Last edited: Jan 29, 2014
  20. smb02dunnal

    smb02dunnal

    Joined:
    May 5, 2012
    Posts:
    439
    That's fine, I plan to give Fluidity some love tomorrow evening, and most likely, the weekend as well :D

    Self shadowing and shadows from the world are two completely separate things. Just to be clear, I will be providing self shadowing from a single directional light source.
     
  21. lazygunn

    lazygunn

    Joined:
    Jul 24, 2011
    Posts:
    2,749
    ahh that's okay, i was aware of how different they were but it had only just occured to me that these things can cast shadows, there's probably some ingenious feature you can add there to wrap a fluid with a simple mesh that can invisibly shadow-cast (or something) but that probably is more effort than it's worth aha, the sunlight wont be moving so i'll just apply the shadow as a decal or a projector, i don't see why that should be much bother

    i'll look forwards to the results of fluid lovin' then! i've got a bugger load to keep me busy anyways just wondered at the 2 days or 2 months? conundrum
     
  22. smb02dunnal

    smb02dunnal

    Joined:
    May 5, 2012
    Posts:
    439
    I have a way for fluid to cast shadows :D It's built into a separate research project, a project where everything can cast nice colourful shadows (particles, blended geometry and fluid!) but it needs a little bit of polish before releasing it. It's possible though!
     
  23. lazygunn

    lazygunn

    Joined:
    Jul 24, 2011
    Posts:
    2,749
    That's such a tease, great now i'll be kept up at ni.. whenever i'm supposed to be sleeping. Obviously that system would be massively appreciated in this goodness, but like most my requests, hugely in self-interest as i'm not sure that many people need 'volcano things', i didn't at first think it would work at all in the situation, then work so well, then work so well when 17km high, so everything's a bonus right now

    Oh another thing, fluids that have a density changing colour over time/energy level, if that's doable and this all is scriptable i think i can achieve what i only vaguely thought was doable (but was determined to do no matter what), which was have an ongoing volcanic eruption that lasted an hour and a half and was the best looking/most realistic volcano known to man. And so straightforwardly (ill eat my words when it comes to some other task no doubt).

    I have volcano nerds being picky with me, and the volcano in the U4 demo thing (i think its in the big demon guy promo they did) was rubbish, volumetric fumes and suchlike being a box ticker in U4 in the promos and now Unity's getting the same tlc, it's nice for telling people about how pretty unity can be
     
  24. lazygunn

    lazygunn

    Joined:
    Jul 24, 2011
    Posts:
    2,749
    Here's your video with a definitely needing to be massively developed but definitely the right direction 17km tall Fluidity sim in it. Also pimping other wares in the vid, Terrain Composer and World Composer for grabbing an area of land that big, Relief Terrain shaders for the terrain materials and Nuaj for the clouds and atmosphere, all really nice tools

     
  25. smb02dunnal

    smb02dunnal

    Joined:
    May 5, 2012
    Posts:
    439
    Nice! Looks amazing!

    Are you having any problems with the sorting of clouds and fluid?
     
  26. lazygunn

    lazygunn

    Joined:
    Jul 24, 2011
    Posts:
    2,749
    Cheers! And I didnt have to work too hard (just long) to get it all prettified. Completely convinced that with the features we discussed it could be used for a neverending assortment of things. But mainly do a volcano people might remember

    There's no problem with the fluidity simulation with the Nauj clouds (so far) but i've kept them pretty seperate, i'll check this more when i've rested a bit, but fingers crossed, no problems. I actually did have a sorting issue regarding fluidity with terrain using the relief shaders back, it's probably a little bug but worth mentioning

    This may sound ridiculous and off topic and i feel a bit bad say, taking it over to you rather than the guys ive been getting the knowledge from, but as you can see , there are no trees in the video but the texture says there should be frankly absurd amounts. I was informed of volume trees and to me it seemed a great idea! Just no idea how, because im making sure i know i can commit the main taxing problems or its dead in the water. Current solution in mind is using low poly 'cartoony' trees but im not sure that might leave no memory left for a game to fit into *avoid expletives regarding no 64bit editor*

    Given your work, does the idea seem enthusing or do you have reference i might use for this - its probably a lot of effort for now but, i'd pay money for that without thinking. It is out of the remit of this thread you just seemed like someone who knows their stuff!
     
  27. lazygunn

    lazygunn

    Joined:
    Jul 24, 2011
    Posts:
    2,749
    Ooop and i lied, there are z-order problems with the two volume types
     
  28. smb02dunnal

    smb02dunnal

    Joined:
    May 5, 2012
    Posts:
    439
    Yerp, thought there would be :)
     
  29. smb02dunnal

    smb02dunnal

    Joined:
    May 5, 2012
    Posts:
    439
    Hey!

    So last night I managed to get lots done! I even submitted a new version to the store.

    Here's what I added:
    - Fixed instantiation issue.
    - Fluids now render in the scene view.
    - Bandwidth optimisations.
    - Integration with Unity's blended pipeline, this means the fluids sort with other transparent objects.
    - Self shadowing option.
    - Noise perturbation option.

    Should all be available soon!
     
  30. smb02dunnal

    smb02dunnal

    Joined:
    May 5, 2012
    Posts:
    439
    I'd be interested in seeing how this faired with the latest version
     
  31. zelmund

    zelmund

    Joined:
    Mar 2, 2012
    Posts:
    437

    can you upload webplayer? want to see self shadowing =)
     
  32. smb02dunnal

    smb02dunnal

    Joined:
    May 5, 2012
    Posts:
    439
    I did all that in a night (well, in the few hours I had spare). No I didn't get a chance to upload a webplayer :( , maybe at the weekend.
     
  33. zelmund

    zelmund

    Joined:
    Mar 2, 2012
    Posts:
    437
    well, ok. will be nice to see new demo anyway =-)
     
  34. smb02dunnal

    smb02dunnal

    Joined:
    May 5, 2012
    Posts:
    439
    I've added a new demo to the project, I promise I'll upload one at the weekend :D
     
  35. lazygunn

    lazygunn

    Joined:
    Jul 24, 2011
    Posts:
    2,749
    Good stuff! Hope the update goes through soon if it hasn't already, i really want to see all that stuff at work! I did fire feature requests at you like a machine gun so sorry about that aha but the speed that went through is great. One thing friends did point out was the lack of 'persistence' as fumes tend to hang in the air for a while, spreading before completely losing cohesion (not even as mist) via gravity/wind. When you put the sim at an angle, the gravity parameter still angles the effect at the bottom of the simulation area rather than 'down' in world space, would it possible to define the gravity direction with some kind of transform? And finally a great idea a pal had who works in graphics himself and is taking a bunch of interest in this is being able to take a 'snapshot' of the simulation at any state, where you can store the sim as it looks as a 3d texture or the entire state so you can resume it later. This would be VERY useful for me as in my game I intend the volcano to have already been going for quite a while so it would be great to not only have run the simulation a few hours and 'snapshotted' it but also use the sim in various ways for all sorts of cool effects and be able to have a collection of them to use when needed - again in the volcano example being able to place unsimulated but visible dispersed mist or very still, very large 'mushrooms' of gas along the active simulation would be great. 'Simulation composition tool' sounds great surely right! It could be used for allsorts really, effects not usually seen in games, i was thinking something bizarre like refraction based on travel through a 3D texture for eg (although is that how your heat haze works?), and there's not currently an easy way to make these effects into textures like that

    I think I posted videos of the icelandic volcanos where they were pouring out ash like nobodies business, but an example of much of the above is here:

    http://www.youtube.com/watch?v=Daz21tMfSRw

    In that situ a lot of the effect could be composed together i'd imagine and i figure Fluidity would be quite good at supplying all the bits needed to do it if you were inclined.. maybe? Just ideas anyways, and while they definitely suit my uses, the creative options are huge, because you can get so many different forms out of this

    Would love to see what a weekend of fluidity lovin produces! When the update goes through i'll try get a vid of the volcano plume with the update features in mind
     
  36. lazygunn

    lazygunn

    Joined:
    Jul 24, 2011
    Posts:
    2,749
    Also seems the update wasnt complete, as there is no volume renderer for the camera in the package, unless im missing something
     
  37. smb02dunnal

    smb02dunnal

    Joined:
    May 5, 2012
    Posts:
    439
    That is correct, it's no longer needed. Remove it and the packet scripts from your project if they linger around.
     
  38. lazygunn

    lazygunn

    Joined:
    Jul 24, 2011
    Posts:
    2,749
    Hey, i've reinstalled the plugin from scratch and none of the demos seem to work very well, like the self shadowing demo doesnt seem to do anything

    I'll have a tinker as its probably me being dim but yes, something seems odd with it, one the effectors demo works and it seems only one of the effectors is being simulated properly

    That said, i dont know what packet scripts are!
     
  39. smb02dunnal

    smb02dunnal

    Joined:
    May 5, 2012
    Posts:
    439
    Hmmm. That's not right, obviously I wouldn't of submitted without double checking things.

    Could you try importing Fluidity into a clean project? This is a problem with Unity, sometimes I'll have to make significant changes to the plugin in order to update it, but Unity will keep the old files lying around...

    Before submitting I also updated my editor, are you on the latest version?
     
  40. lazygunn

    lazygunn

    Joined:
    Jul 24, 2011
    Posts:
    2,749
    Hmm, I figured youd make sure it all worked, i'll do as you say and see what happens, cant remember if i updated my editor
     
  41. lazygunn

    lazygunn

    Joined:
    Jul 24, 2011
    Posts:
    2,749
    Ahh! Working on a fresh project, what a conundrum, maybe i'll be able to bring everything over, looks fantastic btw! I think thats anyone's smoke problems dealt with forever more

    Now to get whining over the rest of the feature requests aha

    I've juse started learning the secrets of making huge terrains look nice and Skyshop took a timely madness sale so maybe meaningless but pretty video Mk.2 could be on its ways soon
     
    Last edited: Feb 3, 2014
  42. smb02dunnal

    smb02dunnal

    Joined:
    May 5, 2012
    Posts:
    439
    Nice one! I'm not sure what happened for you, but after thinking it over, it sounds like your original attempt might of been using the old shader?

    I'm still not 100% happy with the self shadowing, it's a bit cheap and nasty, can certainly do better. Also I have ideas for internal scattering due to directional light, and emissive scattering (ie. the fluid lighting itself).
     
  43. sloopidoopi

    sloopidoopi

    Joined:
    Jan 2, 2010
    Posts:
    244
    Do you mean with cheap and nasty the rings that I notice on this screenshot? $fluidity.shadow.jpg

    I also noticed that the Text Demo doesn't work anymore on my machine. I can't see the texture fluid . (win 7 , Unity 4.3.1, ATI Radeon 7750)
     
  44. lazygunn

    lazygunn

    Joined:
    Jul 24, 2011
    Posts:
    2,749
    It wasn't bad work for a night or two! Haven't had a proper go since im trying to pull the scene together again now, but i'll let you know when it comes to volcano time, esp as it seems you added a few things that might need explaining
     
  45. smb02dunnal

    smb02dunnal

    Joined:
    May 5, 2012
    Posts:
    439
    Not bad for a night!

    Next version will have better lighting, I just wanted to get something together quickly as I'm eager to see what your volcano looks like with a bit of shadowing.
     
  46. smb02dunnal

    smb02dunnal

    Joined:
    May 5, 2012
    Posts:
    439

    Yeah, that's about right.

    Not sure why the text demo doesn't work for you. Does anyone else have this problem?
     
  47. lazygunn

    lazygunn

    Joined:
    Jul 24, 2011
    Posts:
    2,749
    Actually, thats definitely something I should get onto, i'll fiddle with my current scene a bit but when it goes past 4 i'll just revert to a simpler project to see how it works out with what I have
     
  48. smb02dunnal

    smb02dunnal

    Joined:
    May 5, 2012
    Posts:
    439
    Got a new version of the shadowing, much better. Here's a demo.

    Fluidity Shadowing
     
  49. lazygunn

    lazygunn

    Joined:
    Jul 24, 2011
    Posts:
    2,749
    Sorry for not getting the volcano to you tonight I had a massive burst of inspiration from a graphics tech guy I know showing me stuff like the art of Moebius and this:

    http://www.youtube.com/watch?v=2aFjdYxoCfs

    Which had me reapproach my terrain and fool around like crazy with Nuaj. Time consuming! I'll have the volcano ready for the morning I think, i'll be stocked up with coffee and determination to get this becoming a beautiful thing.. on which point I had a proposition for you (You're the only person I know, i think, who is doing directcompute stuff that ive communicated with), you could be able to sell it on asset store, i just need it as a post-effect (that would go beautifully for imagery I had in mind), its essentually a rewrite from CUDA to a Unity directcompute friendly image effect/filter, can give you the code and wotnot.

    If you're still about you could pm me the new shadowing if you feel like it! Just gonna watch it after coffee with the lady
     
  50. lazygunn

    lazygunn

    Joined:
    Jul 24, 2011
    Posts:
    2,749
    And my word that is beautiful! And so fast! I'd you got light scattering in there there is no end to the niceness

    I'll poke you about other stuff we'd discussed, featurewise, after I get the volcano plume already done with what I have, and it be sufficiently cool looking to promote more inspiration