Git Product home page Git Product logo

odd's Introduction

odd

Odd is a peculiar little software renderer written in Haxe that aims to be platform agnostic.

The idea is to define the rendering process in a cross-platform way, and have it accessible to platform-specific rendering contexts.

Please note that Odd is still under development!

Platform Target Repository
Desktop Java (Swing) odd-target-java
Mobile Android odd-target-android
Web HTML5 (Canvas) odd-target-html5

For examples of use, please visit the odd-samples repository.

Instructions

  1. Get Haxe.

    • 3.3.0-rc1 was used to develop Odd, newer versions should work
  2. Get Odd.

    • For git users: haxelib git odd https://github.com/dstrekelj/odd.git
    • Everyone else: haxelib dev odd path/to/downloaded/odd/repository
  3. Get one (or several!) Odd targets from odd-target-* repositories.

  4. Try the samples in the odd-samples repository.

odd's People

Contributors

dstrekelj avatar

Stargazers

Lewis Lepton avatar Alexander Koz. avatar Datee avatar Louis Pearson avatar Ronan Sandford avatar Aleksandr Kuzmenko avatar  avatar

Watchers

 avatar James Cloos avatar Alexander Koz. avatar  avatar  avatar

Forkers

bradparks

odd's Issues

BMP texture support

Uncompressed bitmap textures must be supported cross-platform.

Bitmaps should be read and stored as instances of the Texture class. These can then be fetched through the asset identifier (path).

[BUG?] not building

going thru the examples, they dont build. comes up with this error message

lepton:Sample06 lepton$ haxe build.html5.hxml
Initialising Odd project.
/usr/local/lib/haxe/std/neko/_std/sys/FileSystem.hx:50: characters 20-55 : Invalid call
/usr/local/lib/haxe/lib/odd/git/odd/tools/macros/Utils.hx:30: characters 21-48 : Called from
/usr/local/lib/haxe/lib/odd/git/odd/tools/macros/Project.hx:18: characters 34-55 : Called from
--macro:1: character 0 : Called from
Aborted

Asset loading

Load assets from standard data fromats (e.g. Wavefront, Collada) at compile-time for full cross-platform support.

Texturing

Support the use of textures through the fragment shader.

Textures must allow sampling on a per-pixel basis for colour channel values.

Textures can allow modifications on a per-pixel basis, for colour and individual colour channel values.

X-position on screen, if outside of context size, wraps around screen

If a point is moving across the screen and its x-position becomes greater than the width of the context, or lesser than zero, it will wrap around to the other side of the context.

For example, if the context is of 800 x 600 dimensions, both an x value of -400 and 1200 map to 400.

The expected behaviour is for elements outside of context dimensions to not be drawn at all.

Clipping

Primitives that are outside of or partially inside the view frustum must be clipped.

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.