Git Product home page Git Product logo

engine's Introduction

linkedin

Important

About me

Hello there ๐Ÿ‘‹ my name is Linus and I'm a passionate programmer who's always looking for a challenge. I've previously worked with game development using C/C++, Node, Python and more before I moved to the web development world to make use of NodeJS, TypeScript and React among other tools. My heart still burns for games and I play a lot in my spare time while trying to make a game, constantly switching between Godot & building my own engine.


Note

Experience

  • 2024 - now Fullstack engineer @ Knowit Experience
  • 2023 - 2024 Fullstack engineer @ ExOpen
  • 2020 - 2023 Fullstack engineer @ Bonnier News/Expressen news-site in Sweden
  • 2016 - 2020 Gameplay & Network programmer @ Avalanche Studios
    • theHunter: Call of the Wild (pre-release)
    • theHunter: Classic (LiveOps)
    • theHunter: Call of the Wild (LiveOps)
    • Engine
    • Second Extinction

engine's People

Contributors

linus-skold avatar

Watchers

 avatar

engine's Issues

Model batch rendering limited to entities

Model batch rendering is currently limited to entities due to having two different ways of handling textures.
Materials & Surfaces.
Surfaces is doing it the correct way where you load a model and create a surface based on the mesh and add the correlated textures to that surface.
Materials will be created in a json file and you won't be able to have multi material models.

and currently the model batching is made on a per material basis and anything that runs with a surface will not be rendered even if they have a material in the background.

Directional Shadow Mapping

Directional shadow mapping is currently broken.
The orthographic projection matrix is there and seems to be setup correctly.
The light view matrix is missing however and this is most likely the cause of the issues with the shadows.

Support Multi-material Models

There are currently no support for multi-material models with the setup the engine currently supports for entities, forcing the content creator to put everything into a singular texture.
Which is highly inefficient and is quite bad.
Multi-material models needs to be addressed.

Renderer messy

The Renderer class is currently very messy and hard to keep track of what's going on.
Proposing a RenderPass structure but the issue with that is the different context states.
RenderPass might not be a good fit?

The changes that I want to make can be related to model batch rendering.

High memory usage

High memory usage due to excessive use of new and excessively large GrowingArrays used everywhere. Prune these and see what actually has to be entities and world dwellers.
Only dynamic objects?

Terrain color goes whiter the further you go from ( 0,0,0 )

The terrain color goes whiter the further you go from ( 0, 0, 0 )
this is related to the PBR shader (deferred_ambient.ps, needs better naming)
The only lead I have right now is the specular calculations. Possibly the ambient calculations too.
Might want to split the PBR for objects and terrain to do different things.

Edit :
Issue is related to the fresnel calculation

Edit 2:
Issue is related to NdV

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.