Coder Social home page Coder Social logo

steaklive / everyray-rendering-engine Goto Github PK

View Code? Open in Web Editor NEW
581.0 5.0 22.0 3.54 GB

Robust real-time rendering engine on DX11, DX12 with many advanced graphical features for quick prototyping

License: MIT License

C++ 83.09% C 0.88% HLSL 16.04%
rendering graphics 3d-graphics global-illumination directx-11 pbr lightprobes deferred-rendering voxel-cone-tracing game-engine

everyray-rendering-engine's People

Contributors

steaklive avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar

everyray-rendering-engine's Issues

TOFIX: keep an eye on "Keyboard" in levels

I have realized that sometimes I am deleting/re-allocating new instances of Keyboard which is a global game component/service of Game.cpp. I should remove all instances of "mKeyboard" from levels and use an existing code when needed "(Keyboard*)mGame->Services().GetService(Keyboard::TypeIdClass());"

TODO [ENGINE][GFX]: Add "alpha to coverage" flag for objects from scene file

Some RenderingObjects (i.e., trees) might need "alpha-to-coverage" blend state (otherwise, Gbuffer has useless alpha geometry, GI is breaking a bit, etc). A possibility to set and read this flag from the scene's file should be added. Currently, only the foliage system has "alpha-to-coverage" by default.

TOFIX: Clean file paths in code

After refactoring the codebase it is now possible to use relative paths to the files in code. However, this should be changed in every .cpp by hand (replacing in VS won't help)

TODO: Add hybrid rendering support

The current implementation of EveryRay uses Forward Rendering. It would be nice to have Hybrid Rendering (Deferred + Forward) for some potential features (i.e. SSR). We do not need a full deferred pipeline - only some Gbuffers. The inspiration might be coming from the rendering pipeline of "Doom" (2016)

Level Loading Issues (Sponza and Terrain) with Latest Commit 2d06ccf

Just an FYI, came across your engine and with a fresh git clone it built right out of the box. One issue is commit 2d06ccf, the Sponza and Terrain scenes don't load properly. Sponza stays on the test scene and Terrain loads two trees. I'll be digging into seeing if I can help debug what's going on, but just wanted to give you a heads up.

EveryRay Level Loading Issues

TODO: add instancing support to "editor mode"

At the moment if the object is instanced, it is not possible to transform it in the editor mode. It would be nice to have an object marked as "instanced" in the global level's/scene's objects list and be able to click on it and then have a new UI window popup with the list of instances of that object that are clickable/controllable through the editor.

Also do not forget to add AABB support/wireframe mode!

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.