A Unity ID allows you to buy and/or subscribe to Unity products and services, shop in the Asset Store and participate
in the Unity community.
Introducing the new Universal Render Pipeline and High Definition Render Pipeline subforums!
Unity 2019.3 Beta is out now.
Discussion in 'Works In Progress' started by djweinbaum, Jun 13, 2014.
Looks great! good work.
That's exactly it. I don't mind it being thought of as photography, but I like the rustic theme.
Yes, absolutely. The game isn't about the act of painting itself, so much as its about using "painting" or screenshots as a mechanic to get players to interact with the visual environment as they traverse it. There are quests that call for paintings of certain things, from certain places or times, so it makes the player pay attention to the world.
That fills my heart because that's what we're going for!
That painting concept is so beautifully done! almost as beautiful as the environments themselves - looking forward to this
I start to fall in love with those incredible views. I'm really hoping for this piece someday.
The game looks beautiful! I swung by the website, nice presentation there. The setting has much potential for a beautiful and captivating story. I look forward to seeing how things evolve!
Some people (though not on this forum) have gotten the wrong impression about what Eastshade is. That is 100% because we haven't explained the game very well. Our latest post is our attempt to explain what the game is. I'll post it right here:
I want to clear the air about something. I’ve done a terrible job explaining what Eastshade is like to play. Part of that is because this project has been evolving over these two years, but the bigger reason is that my familiarity with the game makes me forget to talk about important points that nobody could possibly know. Jaclyn and I have concocted a concise explanation of what the game is:
“You are a traveling painter, exploring the island of Eastshade. Capture the world on canvas using your artist’s easel. Talk to the inhabitants to learn about their lives. Make friends and help those in need. Discover mysteries and uncover secrets about the land. Surmount natural impasses to reach forgotten places. Experience how your actions impact the world around you.”
Eastshade is a non-violent game; however, it’s not a game without mechanics, progression or goals. To me, a walking sim is a game that forgoes these things and focuses solely on atmosphere. Mechanically, Eastshade is a game that gives players the space to wander. We’ve made an effort to make the world feel alive and responsive as players explore. But there is also a clear sense of direction and progression. Here is a condensed description of the things you can do in Eastshade:
Meet the Inhabitants – Interact with the locals through dynamic conversations with discoverable topics and branching dialogue.
Capture Your Surroundings – Compose paintings anywhere in the world and offer them to characters to gain items, knowledge, and unlock secrets
Find and Craft – Acquire materials and schematics to surmount obstacles.
Interweaving Micro-Stories – Actions and dialogue decisions affect future interactions and outcomes as you meet new characters.
Story wise, Eastshade is not one particular tale that we were burning to tell. In order to allow the player to live the experiences we let go of orchestrating a controlled storyline and focused on building the world at large. To that end, Eastshade is filled with many little stories; each with their own effects and consequences on the state of the world. If you love the distilled sense of place that some walking sims have, Eastshade has it for you. However, if you weren’t a fan of Dear Esther or Gone Home, it doesn’t necessarily mean you will dislike Eastshade.
Hopefully that clears things up a bit, and hopefully the new landing page does a better job of giving newcomers the gist of what the game actually is.
After over two years of development, we're proud to present our first trailer!
Last week we released our first official trailer and the response has been hugely positive! People seem genuinely interested in the game and it leaves us inspired as it does flattered. In addition to being talked about on a multitude of forums, we received coverage from a number of news sites. This might be an interesting list to you fellow Unity devs. They are listed very roughly in order of referral traffic. While I can’t track them all at this point, I will attempt to gather them in this press roundup list for my own personal records, and for you all to check out if you want. I tried to include only unique articles, and exclude reblogs.
A Handsome, Trustworthy Blog
Future Beta Gamer
The Golden Cartridge
Indie Game News
Gry Online (Polish)
Adventure Zone (Polish)
Centrum Her (Slovak)
Adventures Community (Bulgarian)
Games Tiscali (Czech)
Gaming Portugal (Portuguese)
Video Gamer Portugal (Portuguese)
Game Guru (Russian)
Adventure Advocate (Greek)
This looks amazing. Can't wait to see more as development progresses.
Great trailer, and looks like you got a great response from it. Good job @djweinbaum!
I cannot believe that I'm only learning of Eastshade now. I love the art, love the concept and I'm downright jealous of how you've put it all together.
The latest blog post goes in depth about how I made Eastshade's sky. You can check it out inline here or on madewithunity.
The sky is an important character in Eastshade. In addition to taking up a large portion of the screen at any given moment, it also gives players the sense that the game world has its own beating heart. While I knew I wanted to make the sky spectacular and dynamic, I also didn’t want to spend tons of performance or development time on it. While something like dynamic volumetric clouds can look absolutely awesome and convincing, they are out of my comfort zone technically and are very expensive to render at high enough detail to look realistic. After all, Eastshade is not an airplane simulator! So I opted for a solution with simple parts that I could hone easily with my artist’s eye, rather than a more procedural approach.
The Day Cycle Manager
Firstly, I knew there were going to be a bunch of values to tweak for each distinct time of day, so I wanted one central place to save/load and tweak them all. Since the sky setup is made of quite a few parts and shaders, I was led to create what I call the “DayCycler” component, which looks like this:
This custom inspector may look formidable with its many fields and values, but it’s really just a bunch of references to material values, light values, and rotations pertinent to the global lighting. Inside this component is a simple update loop which interpolates between the most recent and incoming time of day presets. With this simple system, I can go through and tweak each distinct time of day like a painter, and all the in-between times are taken care of for me. No need to manage 20 different IPO curves. The times are 0-1 rather than 24:00 so don’t be confused by times like 0.175 (that would be something like 4:12 AM). There are a lot of things in the world that look at the time of day which are more local, such as a a hanging lantern, or chirping birds. Little lights and audio sources like these drift in and out of memory as the world streams around the player. Referencing and managing all these little things in this central controller would be quite cumbersome, so the second part of this system is this little component:
I attach this to any little light or audio source that is day/night dependent and it looks at the current time of day and decides what value it should be independent of the DayCycler. No need to micro manage values like these.
The “sky” is composed of a few different elements:
Fog – Starting with the closest and moving out, we have the all-important fog. I use the fantastic Fog Volume for this. The reason I love fog volume is because of its gorgeous and fairly cheap light in-scattering. If you’ve never heard of in-scattering, I suppose it can be described as the look of sunlight passing through fog. I’m not talking about god rays (though in real life I believe its caused by the same thing). It adds a lot of depth and a sense of light direction to the atmosphere.
Clouds – Call me old fashioned, but I like the look of photo clouds. The biggest issue with photo clouds is that it is difficult to make them dynamic. My strategy was simply to take photos on a day that the clouds didn’t have a strong sense of light direction, combined with touching up the parts that look too directional. Once I had my 360 degree cloud panorama, I made an alpha mask cutting out the blue parts because I wanted to encapsulate the clouds seperate from the atmosphere. I mapped my clouds to a dome that rotates slowly to give the impression that the clouds are moving along the horizon. This trick is stupid simple, and is ineffective for giving players the impression that clouds are passing over them, so if you want that you will have to combine this with other methods like overhead UV scrolling clouds or something like that. I actually haven’t gotten around to doing overhead clouds yet, but funnily enough players tend to rarely look directly up and haven’t noticed.
Atmosphere – I find a simple 2-value gradient shader on a dome mesh is sufficient for the atmosphere. The opacity and colors animate with the day cycle. I increase opacity near the horizon so it looks thicker, while the stars show through more when you look directly up.
Sun – There are two parts to my sun. I have a sun flare, and an actual sphere mesh with a highly emissive solid color. This way I get a nice bloom, even if the sun is only partially showing. This is particularly useful for me in Eastshade, as there are daily eclipses and I needed a way of showing the sun slowly hide or emerge from behind the moon. The sun’s directional light doesn’t actually move around in the sky, it just rotates. To keep the sphere lined up with the flare, I rotate the sphere around the player’s head, rather than around its own center.
Moon – I designed a custom shader for the moon. It’s anything but physically accurate. It expands the light angle a bit, and uses heavy fresnel to fake the bending of light around the atmosphere. I have a special light that shines on the moon alone to simulate the sun hitting it. Here’s a bit of Eastshade trivia regarding its moon:
The moon in Eastshade appears habitable, and since its about the same size as the planet you’re standing on, you orbit it as much as it orbits you! In other words, both planets are moons to one another. This means Eastshade’s moon remains in the same place in the sky all the time, which creates daily solar and lunar eclipses. At midday it blocks you from the sun, and at midnight you block it from the sun. Tidally locked, you orbit around each other in a double planet dance all the way around the sun. Is there another world of intelligent life just across the cosmic pond? The residents of Eastshade can’t know. All they can do is look up and wonder…
Space – The furthest background is the space dome. This dome has a tiling star texture, supplemented with bits of geometry for the larger stars to break up the tiling. The reason I use geometry to break up tiling is because having a texture that wraps around the whole sky would require a MASSIVE texture to look sharp. The fact that stars are tiny little dots means they live or die on their sharpness. If I wanted to add a nebula or something like that I’d probably have that as a decal sticker on the star dome, because doesn’t tile and doesn’t need as much resolution as the stars. I’m trying to keep memory and build size down, mostly because I don’t want to waste development time maintaining a huge build.
Finally, its important to note that all these things follow the player around as they move. Since most of these things are supposed to look infinitely far, there shouldn’t be any parallax between the elements.
I’m not done with the sky systems in Eastshade. There are a few things left to do. Among them is come up with some sort of overhead cloud coverage to pass over the player. I’m thinking I will put a flat disc and use vertex color to taper the opacity around the edges. Then I’ll scroll the UVs over a tiling cloud texture. I also want to have multiple cloud textures for different weather conditions and fade between them. I’ll need to make a weather controller that operates on top of the DayCycler and plays off the base values, so I can have any weather condition at any time of day. I’ll need to implement a global wetness property in my shaders that increases gloss and spec, while darkening the diffuse a bit.
It looks really beautiful and I love it when games innovate. Plus, it's great to be able to learn more about game development through your own eyes. Many thanks and keep up the great work!
Wow. Memories of the very first Myst come flooding back...
How the hell did you get a forest that big to work? I am doing something similar with forests and I am lucky if I get 30 fps on a i7 4790k and GTX 970. :'C
He's not using Speedtree i assume
Clever tricks and a bit of dark magic ; )
LOD I would guess. Maybe some more things...
Nice PC btw.
LOD, billlboards, chunks streaming, as much atlas as possible and as few materials as possible consolidated with efficient mesh combination.
That's the answer . I'm on my second iteration of combining system right now and I'm very happy with it (one of the few systems I've built that I don't feel I need to rewrite!). It distributes my objects into a grid of groups and combines their LOD1 to a single mesh. Then the entire group LODs as one (I'm not using Unity's lod component for foliage). All my foliage uses one massive material. This way, as I move away, not only is the polycount going down, but also the draw calls. I hand author all my foliage with a lot of care and planning, and I've been honing it throughout the entire production.There's a few tricks for building foliage in a way that it LODs well. You almost need to prioritize the LOD1 over the LOD0.
The dynamic sky is impressive. How did you managed it to get two transparent shaders (alpha blended clouds and sky gradient) working correctly together? Or did you have used any other shaders for it?
Hello everyone! We have a big announcement:
In September 2016, we chose to take a break from Eastshade development to make a small Eastshade spinoff called Leaving Lyndow. The reasons for this were threefold: Firstly, as an independent studio who has never shipped a game, we feel unprepared to manage the logistics of a large release like Eastshade. You only get to launch a title once, and we feel one misstep could compromise four years of perseverance. This small game gives us a chance to experience the process. Secondly, we want additional funding to supplement Eastshade’s development while still remaining independent. Finally, we feel Leaving Lyndow enriches the Eastshade universe, and is a great way to begin building out the world for people. We want to allow you all in to Eastshade’s world right now! So without further ado, we present the official trailer for Leaving Lyndow.
We realize releasing a small game right in the middle of development of a larger game isn’t conventional, so here’s a little further explanation.
Gave a thumbs up for Leaving Lyndow. Looks like a solid game, best of luck my friend.
Here's a quick link to the greenlight page for anyone interested and doesn't want to hunt down the page:
Oh good call! thanks for that. It seems to be doing okay. In the comments I was just accused of being a Unity asset flip, which was quite hard to take. People just don't know what's real anymore with so many slimy so-called devs posting unity assets wholesale on greenlight. I haven't been deleting any of the comments, but I didn't have the strength to leave that one up. I don't think there's anything a commenter could call me that would get under my skin more.
Wow that's weird; I don't see how your work would be considered an asset flip. Just some jealous trolls, don't let them get to you. Your work is truly amazing and you will go far. Don't let others try to bring you down.
Keep us all updated on the progress! And best of luck with greenlight.
You're too kind .
Yeah, just ignore them, ppl tend to troll around when they get jealous about something they never could manage themselves : ) Gave you a thumbs up since i have been following this thread since the beginning . )
I was wondering why you stopped posting stuff a year ago. I was kinda curious on your project since it's the first 'serious' open world stuff I see on unity.
I don't want to be pushy, but was your decision based on the fact that unity's performance in some key areas is quite very very bad?
Anyone with common sense should know it's not asset flip nor a "walking simulator"... I can understand your frustration but keep up it's really excellent art & work!
Wish you my best Danny and yes I would buy it as soon as it is available
Nope. There are no reasons beyond what I mentioned in the explanation video.
wanted practice shipping a title (this is the most important one)
we thought it'd be a cool way to introduce the world
Had nothing to do with Unity's performance. The thing about Unity is that its a blank slate more so than any other commercial engine. That's my favorite part about it actually. Its data structures aren't optimized for any particular game, so when it comes to performance you need to build something that works for your game. We are using the "Eastshade engine" for Leaving Lyndow, so its actually streaming like an open world game anyway, even though its not open world. We're actually at 60 fps on a 7870 even in the dense forests.
Thank you so much . And thanks for up voting in greenlight and commenting! People look at those comments and it helps a lot I think .
I had completely forgotten about this thing since you went silent... good thing I clicked on watch thread a while back.
Looks pretty interesting! I have yet to find an open-world survival game I actually like; maybe this is the one.
P.S. I broke Steam the other day... still trying to fix it, so I can't give you an upvote yet.
Yeah - this is a good idea imo, and one I've considered if I ever decide to work on a larger game. I think you are taking a good approach.
Just make sure the small game doesn't turn back into a big game! Leaving Lyndow took 4.5 months full-time, and I thought I was very careful about scope. I thought it'd take me two months.
Hey everyone! Leaving Lyndow is out! Like, right now! You can go play it! After three years we finally have something you can play. It’s not Eastshade. It’s not a demo for Eastshade. It’s its own thing. But we’re deeply proud of it!
If anyone wants to check it out, here’s where you can buy it at the moment:
Amazing work!! =) Yes, please share with us some tips and videos. Not many AAA Environment guys around here we can learn from. Beautiful work, keep it up!
I wrote a super beefy article Art Tips for Building Forests. Its huge so I'm not going to cross-post it here. In it I talk about a bunch of stuff I keep in mind while authoring forests. I will eventually write a second article on forests which is all about optimization.
Cool article! Working on a forest scene myself right now I really appreciated and enjoyed it. Something that wasn't in the article but helped me a lot was to spread a few smaller/younger trees among the bigger typical forest trees. This adds some visual interest to parts of the view that might consist mostly of trunks going on and on, as well as make the forest seem denser. Looking forward to the article on optimization and I would also enjoy your thoughts on lighting tricks for forests.
Any chance of a Mac release?
Oops sorry! Don't know how I missed this! Yes! We have OSX and Linux support now!!
The game's environment looks very nice, one of the best I've saw in Unity, I don't regret buying the game .
But the fact that the full is going to be an open world makes this really interesting. Keep up the good work!
How's Eastshade coming along, matey?
Could you show polygon version of some plants, ivy and some tree ? They looks great while i'm not sure you use lot of polys.
He usually showing the update on twitch livestream
Is the stream still on? sadly haven't seen any for a while.. had lots of excellent tips on those streams.
yeah i also haven't seen it for a while. He did use lot of tricks for his game.
Better than ever I think! We had some fresh eyes do a play test recently and it went really well! We're at over 2.5 hours of solid gameplay now . Quests are coming together at a pretty decent pace. Thanks for asking!
Sure. They're not that low poly really. For foliage I believe the LOD1 is just as important as the LOD0. I design the plants in a way that making the LOD1 will be easy. For instance I put the texture for both LOD stages on the same texture and use the same material so I can leave important parts of the LOD0 in the LOD1 for silhouette without adding draw calls. That helps me keep the LOD distance down.
Overall though draw calls are more important than poly count, so I owe a lot more of my performance to my LOD combining system than efficient authoring of the plants themselves. I will do a write up on forest performance optimization soon.
I have fallen off the streaming horse . I got a cold, then I had to do a bunch of unstreamable work like voice casting, bug fixing and such. But I mean to get back on soon .
Great to hear! Keep right on!
Oh hey, get well soon man, take your time don't push your body too much
I finally got around to writing that in depth explanation of my foliage systems: Check it out at https://www.gamasutra.com/blogs/DannyWeinbaum/20171201/310813/Foliage_Optimization_in_Unity.php