Coder Social home page Coder Social logo

neothyne's People

Contributors

acerspyro avatar blub avatar graphitemaster avatar matthiaskrgr avatar mtwilliams avatar q66 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

Watchers

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

neothyne's Issues

RGTC

Implement support for RGTC normal maps if the hardware supports it

Positional audio

Implement support for 3D positional audio in the audio engine

Implement fog

Need to reimplement this. It was lost in the deferred rewrite. The sky fog gradient stuff should piggy back off of it as well. This also needs to be made part of the editing menu as well.

Deflate implementation

Inflate exists already for loading maps and PNGs. Now we need the inverse of that so we can save maps and PNGs

Scripting language

I have a working lexer and parser. Need to consider a execution pipeline for it, maybe bytecode AOT or just execute on the AST directly.

FXAA

Implement FXAA

DDS loading

Full fledged loader including cubemaps. If the hardware lacks S3TC we'll decode it manually (KDE, Gimp, GNOME, Chrome, Firefox, Tesseract) all do it without fear of patents

Audio resampler

Going to need to deal with audio resampling in the mixers

Materials

Implement support for materials in the engine.

Get rid of SHA512

Get rid of SHA512 (it's rather slow and overkill) use SHA1 instead and implement SSE2 optimized variant

Fix string buddy allocator

The setSize and setFree options cannot exist alone as they can operate on uninitialized data. To fix this we should consider setting the size and free as one thing "setStore".

S2TC

Implement online S2TC compression if the hardware cannot do any of the texture compression formats. We'll be reimplementing the work done by divVerent which he has strong reason to believe avoids the S3TC patent issues. We'll be enabling this by default for Mesa vendor strings and Intel on Windows (which has a horribly slow S3TC compressor.).

Support shadows on map models

Basically the infastructure decided to do this reasonably is as follows

Determine static models based on hashing their position/rotation and scale,
if that information has not changed since the previous information then bake that
information directly into the world geometry (and then reuse that information for all subsequents)
If that information happened to be in world geometry already but the model changed, then reclaim
that world geometry for other models.

For dynamic models render them individually by transforming them into the world for the
lighting.

Cleanup code

Make everything consistent, clean and documented

Bring back HOQs

Culling is the new caching. Use the technique explained by eihrul to issue HOQs for groups of models, render them anyway but use the result the following frame to decide if they should be rendered for that frame. This prevents pipeline stalling.

Texture decoding can overflow the thread stack

texture.cpp:1759 (as of b728399) allocates the texture decoder on the stack, which may cause it to overflow. This realistically happens on OS X with the default stack size. Unfortunately, SDL2 doesn't expose an API to change the thread stack size. Allocating the decoder on the heap alleviates the issue.

SSAO

Implement SSAO

Font rendering

Probably just go the offline font map method to eliminate the dependency on freetype.

HUD Guns

After experimenting with various ways of representing HUD guns, the easiest way is to use the following pipeline setup

        p.setRotation(m::quat());
        p.setRotate({0, -99.0f, 0});
        p.setPosition({0, 0, 0});
        p.setWorldPosition({0.4f, -0.4f, 0.4f});

This seems to be sufficient for most, if not all HUD weapons.

We need to figure out how to render them without them causing SSAO to break.

Eliminate standard library dependencies

Right now we depend on map, set, vector, string and unique_ptr. We should implement our own containers to replace these so that we need no depend on the version provided by the compiler

Animation blending

Curently just forwards the current frame. Can't scale this with respect to time since animations will look slow and choppy.

Console

After font is implemented work on an engine console

Bring back map models for the renderer

Due to the world stuff becoming game code the engines renderer no longer can render map models. Map models are in essence an engine concept and not a game concept so we can just put them in there like the rest.

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.