Saturday, 7 September 2024
Free-talk
Friday, 2 August 2024
Tribute, quo vadis?
I experienced this a lot in the last half a year. I finished working for Unity Technologies and moved back to Poland to live with my girlfriend. I started a new consulting job for which I created my own company. I of course named it "Coffemonsters". Things are good.
This could potentially be the end of the post, but then it would be a short and boring one 😁 I'm curious how many of you noticed a foreshadowing of problems.
When I created the company I was happy that finally, "Coffemonsters" is something more than just a name. I'm still happy about it but some problems came with it. On one sunny day, I went for a walk and realized that there was a potential problem regarding Tribute.
Till now we were making things under this name as individuals. This was ok as we were creating a Tribute for the game we liked. Now with Coffemonsters being a company, this means that we could step on the toes of 2.21 :( So what to do now?
I did the most oblivious thing that was to do. Give up on the project. No... just joking. I wrote to Ben from 2.21 and just asked him directly if this would be a problem. I had nothing to lose. What I learned is:
- He knows who I am and that I work on Tribute.
- He is ok with us continuing to work on the project.
- They really care about LBA and its community.
Wednesday, 17 July 2024
Changes in graphics
People following the project with interest in its technical aspects know that the L.B.A. Tribute runs on OpenGL. This graphics API was introduced in 1992 and by some, it is loved while by others, hated. These days you may hear an opinion that it is inferior compared to DirectX.
In reality, the answer is more complex. OpenGL evolved from its original form and these days the current stable release carries version 4.6 which was released in 2017. I mention that because on the internet, you can still find tutorials and people using OpenGL 1.4 from 2002 and claiming that it is inefficient and not modern.
In reality, if you look at the API that OpenGL 4.6 offers, you will see that it is closer to the Vulkan API than OpenGL 1.4. We ourselves used multiple versions of OpenGL and in these 18 years, we learned how to use it efficiently, grew fond of it, and these days have a large sentiment for it. But even we understand that in the game industry, nothing stays the same. Things moving forward, GPU architecture evolving, API changing, and modern tooling focus more on supporting Vulkan and DX12.
This was visible when we recently tried to improve our shaders compilation pipeline. Our goal was to combine SPIR-V which is us for Vulkan with OpenGL. Based on documentation it should work without any problems but in practice, our attempt was only partially successful. We managed to use it for shader compilation which gave us uniform errors across different vendors. But it also failed to load the SPIR-V shader in OpenGL which was our goal. All our attempts to use it resulted in not passing some data to the shaders. We even tried examples from other people. But even they failed for our machines which was a sad discovery.
Another example of issues with OpenGL was when we were tracking graphical issues. Each of them was a small issue with the API usage that potentially could be caught by the debug layer in Vulkan. In the end, all the tools for OpenGL did not give us clear information that something went wrong and we needed to spend a significant amount of time to track them down. For people interested in graphics we are currently using RenderDoc and Nvidia Nsight Graphics. Looking only at them we have a feeling that OpenGL lacks debug tools compared to more modern APIs. In some way, this makes sense as the current focus of the vendors is on the modern API and not on something used by a few.
That is why we decided to start the process of switching all our tooling to support:
Now, don't worry. We do not plan to drop everything. We plan to do things in stages and the first one of them is to prepare code for the second graphics API and display a triangle on screen. This effort will be driven by Alex while I’m continuing our Little Big Adventure project. Things are slowly coming together and last week was the first time when we felt that we finished with only fixing stuff and doing something that moves us closer to the finish line.
Monday, 8 July 2024
Dr. FunFrock
Saturday, 29 June 2024
T&T - Tribute and Technology
While writing posts we always want to share everything that we do. We talk about art, technology, and design. We never thought about it as a problem. Things changed recently when were writing yet another post and it hit us that there may be different ways of doing it. That is why we want to experiment with a more focused approach, where posts are focused on only a single aspect of our work. We don't know if this will work out but we are looking forward to your feedback what do you think about it :)
Why do people follow us?
What holds people to projects?
What really defines this project?
Now the only question is did we get stuff right in what we wrote?
Saturday, 22 June 2024
Tribute and its small disclaimer.
There is this small post introducing a new logo:
Just recently we noticed a comment written a long time ago:
Shame on us for not noticing it earlier and addressing it. We will try to fix it.
For a long time, we were using the name L.B.A. Remake. This made sense as there were no signs of an official project. When this changed, we wanted to be clear to people that what we do is just a fan project and they should not expect it to be a whole remake.
This disclaimer is also a play on the lyrics from the song Tenacious D: Tribute. Which in our heads makes sense in the context of our work. LBA is LBA and we will never be able to reproduce something like it. We should not even try and just find our own way of telling its story.
That is why we added this small disclaimer. It may not be needed but we just like it that way :D
Monday, 17 June 2024
Dream space
I don't know why but I thought that less time passed since the last post. Turned out that it had been almost two weeks. This is crazy how fast time flies by when you are busy and we were busy.
L.B.A. Tribute is our reimagination of the game we all love. When I started the last iteration of the Tribute, I thought about the beginning of the game and how it feels like something is missing. To fix it I added some story which covers why we ended up in prison. This felt right, but something was still missing there.
For a longer time, I thought about the tutorial level. A place where new players could explore mechanics and thanks to that feel less lost in the world of Twinsun. I tried a few things but none of them felt right. This is how sometimes the creative process works. You try very hard and things do not work out how we want.
Sometimes seeing what is the most oblivious is the hardest. The dream world was something like that. Talking about dreams and visions is all over the place. The initial video shows the end of the world, with dialogs mentioning it multiple times. Even the reason why we ended up in the prison. This just makes sense and we went with it.
Dream space came to life as a place where we learn controls and how to interact with the environment. Then we decided to incorporate the content of the initial texts panel into it. This would make it more sense, story about the planet and four races could be incorporated there in visual ways. A great idea that still missed something.
This thought that this is not what it should be has always bothered me. What this dream space really should be? Who built it? Why everything is ruined? Why we are brought there? I may not have all the answers but I believe that this dream space will be a place where the past, the present, and the future come together. A place that will answer a lot of questions but at the same time create new ones.
What you see is another small spoiler for the dream space. I will still leave it only as a spoiler as the whole idea behind it still evolves. What do you imagine this place like?