3D Graphics Part 1 - Not G3D

Описание к видео 3D Graphics Part 1 - Not G3D

(I accept donations now, go to https://boosty.to/yurikompany to support me with funds, while it is still available in my country)
#3d #programming #videogames

The dream has finally come true! A new voxel engine made by me in two months and running on one core from eight logical hyperthreaded cores of Intel i7-4790 CPU. At the moment, it looks pretty much raw, many features are still missing, even with these beautiful graphics. And slow, some optimization tweaks needed, but for 2187 square polygons and single core processing it is already fine result. However, as far as I progress with Löve 2D framework and Lua plus maybe C++ programming, this may become bigger and, I hope so, faster.

The engine utilizes the structure-based model, where Y axis (not Z axis, as in classic 3D) goes away from viewer by default. A cube which is shown in this video is a separate "structure" that contains 729 blocks called as "3D-forms", and that is also why it has gradient colours. You may call it "a grid", "Lego"-like model or "an object" made of blocks, whatever you say is also true, as it is a editable object with its own grid. From 3D-forms you can create any figures or even cute models. For example, I've sent a video postcard made from blocks to my father recently, he was very excited to see such thing rotating in full isometric 3D. You can even set new vertices, create new 3D-forms and give them the properties which can be changed later. Each block can be moved separately and rotated in increments of 90 degrees, along all three axes, but the whole structure can also be moved and rotated under all 360 degrees along vertical axis, and you can control and edit other structures as well, while creating a whole scene of objects. Camera pitching also works with the full freedom, that gives the young designer the great bottom and front views of their own creation, and also orthogonal 2D.

The reasons why do I create such a monster bicycle is simple. First and foremost, I love programming by myself, especially when it comes to 3D, because it was one of my dreams of all time. The second reason is in already existing game engines it is hard to develop such projects, and they are also overloaded with unnecessary stuff, and you often need other developers that will tell you how to do everything right. And the third reason is I've played quite a few space simulation videogames that do not allow to change the blocks geometry and-or any of their properties, they all stick to some sort of objects already drawn in 3D-editors, and their properties are often strictly connected and sometimes even locked. So, I plan to make an ingame graphics editor that will get rid of these issues, no matter if it is a space ship, or a station, or even a torpedo, so each block must be a component of some sort and completely editable. It is not something revolutional, instead there must be some evolution over revolution. I plan to use the best of voxel building experience, to fight all possible disadvantages of such ingame voxel editors. And the most important thing is to not change the familiar practices while updating the environment and interface, as it gives the opportunity to people to constantly improve their 3D-building skills with already familiar tools, or at least I don't want to repeat such mistakes of previous indie devs again. The cherry on top is... Löve 2D is a cross-platform framework, I hope that my creation will also work well with mobile devices and small computers some day, as I believe that outdated processor with old memory standards accelerates the achievement of these goals. I don't plan to utilize the whole resource of GPU yet, but this small prototype already uses Open GL to render 3D as 2D-planes.

These are big challenges, indeed, especially with poor skills, functional programming and no OOP by default. But it fits me perfectly, I've tried OOP many times, but the functional programming seems to be a cool thing too! For now, I am looking forward to cut unnecessary planes inside of the blocks structure, so the objects will look less blocky (but the stuff inside of them will still virtually exist and may be shown again under certain conditions). I wish to finally bring the models generating from blocks to life. If you wish to support me through these difficulties (I've lost my previous job and looking for another), you are always welcome to gift me few bucks. All cool and simple 3D engines that are easy to understand, to use, and to modify without any serious university courses will always be in demand, even if a little less than neural networks or music that I like to compose or recreate too. For donations, visit https://boosty.to/yurikompany

Комментарии

Информация по комментариям в разработке