We'd like to start the year with a fresh survey! Answering it really helps us, and "more surveys" was much demanded in the last survey :)
Zun was happy with the look of the new floodfill lighting for torches, so he worked on optimizing the code behind it. He spent most of his time converting the code to Rust. Rust is a programming language that Zun himself will explain here:
[Zun]
Code written in C# in Unity is quick enough for most uses, but it has some trade-offs which limit it from reaching the "maximum" performance similar code can reach when written in a different language. Prime example of this is that C# is compiled to machine code every time you run it and there are strict time limitations on doing so (you don't want the game to take 2 minutes to launch), which limits the possibilities for optimizing. Another "problem" is that the C# environment is not especially aimed at maximum performance, so there are circumstances where the code could be quicker but there is no proper way of expressing what you want to do in C#.
So there are some programming languages more aimed at performance, notably C, C++ and Rust. We're using Rust because the environment around it is much more modern compared to C and C++; building on different platforms is easy with "Cargo", it has built-in systems for testing, it comes with a decent standard library. Unity itself is also developing their own language (Burst compiled C#) to use for this exact use case, but at the time of writing it seems to be somewhat work in progress.
Of course C# has it's merits as well - it is generally easier to write, maintain and distribute. So the usage of Rust will be limited to some small parts of the game that run a disproportional amount of time, like terrain generation and now preparing the data for torch lighting. A relatively straight forward translation of the updated torch lighting turned out to be more than 5 times as fast, which adds up to seconds of processor time saved over many torches.
[Zun out]
Zun is our programmer, and I busy myself with most of the other tasks; writing these blogs, making textures and models, thinking about game/UI design, checking and responding to messages, etcetera. But the current and next updates dont require new textures/models, so I can focus my energy on other tasks. This week, Ive returned to learning more about Unity and programming in C#. Im still not experienced enough to contribute to Colony Survival itself, but Im getting closer!
I suddenly got inspired to make a simple game about firing a howitzer. Ultimately youd be firing on distant targets surrounded by targets you explicitly shouldnt hit. Heres my progress in five GIFs:
- Its alive!
- Those things shouldnt be connected
- Thats what it should be like
- Now with sound, explosions and smoke :D
- More smoke, more physics
New Hobby
So our hobby, gaming, has become our work. Time to find a new hobby! ;) And of course my new hobby is very relevant to my job as well: I suddenly found myself interested in building and painting miniatures. You probably know about these plastic building sets for tanks and planes that youve got to assemble and paint yourself. For a long time, I didnt really see the appeal of it. And then, YouTube started recommending videos of experienced model builders. https://youtu.be/9qJ6Q-mSaeQ I was stunned by the results builders could achieve. The plane in the video above doesnt look like a cheap plastic model, it looks like a true plane with metal parts which has been used thoroughly. And then my eye fell on the next step of the process: building realistic dioramas for the models. https://youtu.be/4P5GSDNpExQ I didnt know stuff like this was possible. Apparently, theyve developed all kinds of special paints that can simulate mud, leaked fuels, rust and all the other things that affect objects IRL. Combine these with a realistic model and skill, and you get very impressive results. Ive ordered a couple of models and different paints plus some tools, and plan to be spending my weekend building and painting :) As I said before, I am responsible for the textures/models in CS, but Im not a trained (or talented :P) artist. The things I spent most of my time focusing on was learning the technical details of software like Photoshop and Blender. My experience with photography was very useful - I knew a bit about composition, color and Photoshop. But capturing existing landscapes and objects is very different from creating one from scratch, and thats my job now. Model builders face the same problem, and learning about their approach has already taught me a lot about why objects IRL look how they do. I expect and hope that practicing with building and painting models IRL will teach me useful stuff that I can use when making digital objects. If you have got some experience with model building, feel free to give me advice on Discord :D Bedankt voor het lezen! Reddit // Twitter // YouTube // Website // Discord
[ 2020-01-10 15:56:32 CET ] [ Original post ]
- Linux 32-bit [97.57 M]
- Linux 64-bit [96.17 M]
- Multiplayer support: play with friends and strangers!
- Advanced pathfinding: colonists and zombies will find their way in the world you've build. They will dynamically navigate stairs, bridges and tunnels.
- Explore a world with realistically placed biomes. A giant jungle in the center of the world, surrounded by savannas, deserts and temperate biomes. Two polar regions in the far north and south.
- Support for textures and language packs created by players
- Dynamic lighting and eye adaptation
- Voice your suggestions and be part of the development of Colony Survival!
- OS: Ubuntu 12.04+. SteamOS+; 64-bit
- Processor: Intel Pentium G620 (2.5 Ghz dual core) or equivalentMemory: 2 GB RAM
- Memory: 2 GB RAM
- Graphics: Intel HD Graphics 5000. 1280x720 display
- Storage: 300 MB available spaceAdditional Notes: Work in progress: new features may raise the bar. optimizations may lower the bar
- OS: Ubuntu 12.04+. SteamOS+; 64-bit
- Processor: Intel i5-2300 (2.8 GHz quad core) or equivalentMemory: 4 GB RAM
- Memory: 4 GB RAM
- Graphics: Nvidia GTX 750 or equivalent. 1920x1080 display. supporting openGL 4.2+Network: Broadband Internet connection
- Storage: 1 GB available spaceAdditional Notes: Work in progress: new features may raise the bar. optimizations may lower the bar
[ 6089 ]
[ 3241 ]