All Projects → tversteeg → Nexus

tversteeg / Nexus

Licence: other
🖼️ Actionscript 3, GPU accelerated 2D game engine using Stage3D

Programming Languages

884 projects
184084 projects - #8 most used programming language

Projects that are alternatives of or similar to Nexus

Cross-platform, graphics API agnostic, "Bring Your Own Engine/Framework" style rendering library.
Stars: ✭ 10,252 (+85333.33%)
Mutual labels:  engine, rendering
Cross-platform modern game engine.
Stars: ✭ 149 (+1141.67%)
Mutual labels:  engine, rendering
A 3D physics engine
Stars: ✭ 101 (+741.67%)
Mutual labels:  engine, rendering
Easy to use 2D rendering engine using Vulkan API as backend.
Stars: ✭ 60 (+400%)
Mutual labels:  engine, rendering
A 3D-graphic and game engine for Delphi and Windows.
Stars: ✭ 52 (+333.33%)
Mutual labels:  engine, rendering
Nebula Trifid
Nebula Trifid
Stars: ✭ 62 (+416.67%)
Mutual labels:  engine, rendering
A brief computer graphics / rendering course
Stars: ✭ 11,776 (+98033.33%)
Mutual labels:  engine, rendering
Vulkan based C++ ray-tracing game engine.
Stars: ✭ 24 (+100%)
Mutual labels:  engine, rendering
Yet Another Vulkan Engine
Stars: ✭ 211 (+1658.33%)
Mutual labels:  engine, rendering
scene-oriented, flexible 3D engine (C++, Python, C#, Java)
Stars: ✭ 2,582 (+21416.67%)
Mutual labels:  engine, rendering
Python+Numpy+OpenGL: fast, scalable and beautiful scientific visualization
Stars: ✭ 882 (+7250%)
Mutual labels:  engine, rendering
Multithreaded C/C++ Game Engine
Stars: ✭ 90 (+650%)
Mutual labels:  engine, rendering
⚡️ 可编程渲染管线实现,帮助初学者学习渲染
Stars: ✭ 494 (+4016.67%)
Mutual labels:  engine, rendering
Gears Vk
Powerful low-level C++20 rendering framework for Vulkan 1.2, including Real-Time Ray Tracing (RTX) support, built atop Auto-Vk.
Stars: ✭ 71 (+491.67%)
Mutual labels:  engine, rendering
C++ Metal wrapper
Stars: ✭ 425 (+3441.67%)
Mutual labels:  engine, rendering
486 lines of C++: old-school FPS in a weekend
Stars: ✭ 1,383 (+11425%)
Mutual labels:  engine, rendering
AISA is a Software 3D Engine written in TypeScript.
Stars: ✭ 24 (+100%)
Mutual labels:  engine, rendering
Custom renderer and physics engine written from scratch in C++/Direct3D 12.
Stars: ✭ 17 (+41.67%)
Mutual labels:  engine, rendering
General purpose engine written in C++ with emphasis on materials rendering (PBR, clear coat, anisotropy, iridescence)
Stars: ✭ 181 (+1408.33%)
Mutual labels:  engine, rendering
A path tracer based on hardware ray tracing
Stars: ✭ 20 (+66.67%)
Mutual labels:  rendering, gpu-acceleration


AS3 2D GPU accelerated engine, easy to use. Discontinued

When you want to generate sprite sheets using Adobe Flash CS6, follow these instructions:

  1. Save JSON-Nexus.plugin.jsfl from the root folder of the github repo to Program Files\Adobe\Adobe Flash CS6\Common\Configuration\Sprite Sheet Plugins.
  2. Now open Flash CS6, select the files you want to save as a sprite sheet in your library, press right mouse and click on Generate Sprite Sheet....
  3. Click on the Data format: menu and select JSON-Fixed, and dont select Rotate, you can select Trim and Stack Frames if you like. The engine uses alpha maps so I would recommend using PNG's without a background color, I also recommend a Shape padding of about 10 pixels when you want to generate normal maps.
  4. Press on Browse and select the location where the source files of your project are, press Save and then press Export.

Example Code:

var world:SimpleWorld = new SimpleWorld(stage, spriteSheet, spritesPosition, normalMap);
*  Creates a new World instance, this initializes the GPU for rendering
*  The first variable is the stage so it can get the size of the stage and the framerate
*  The second variable is the sprite sheet texture map, this map contains all the objects you want to draw
*  The third variable is a string containing the positions passed by the JSON script used to create the sprite sheet
*  The last variable is optional, it is a normal map which you can generate using the sprite sheet map

DebugSpriteSheet.saveAsPnG(spriteSheet, spritesPosition, 2048, 2048);
*  Optional, this saves a image to your computer where each sprite is labelled with the sprite id that must be used to call on it
*  This is very usefull for debugging so you dont have to remember all the id's
*  The first variable is the sprite sheet you want to disect
*  The second variable is the JSON string used for the sprites positions
*  The third and fourth variables are the size of the image you want to saveAsPnG

var object:Box = world.addSprite(spriteId, Box);
*  This creates a sprite which is pooled automatically, you can destroy it by using object.die()
*  The first variable is the id of the sprite, you can find this using the DebugSpriteSheet function
*  The second variable is the type of the object, you can use StaticBox (No scale and rotation), Box, and MovieBox(Animated using multiple sprites)

// Inside a enterFrame Event listener:
world.render(new Point(lightPositionX, lightPositionY));
*  This function renders the stage, when you supplied a normal map with the constructor function it uses 3 render passes, and otherwise 1
*  The variable that is passes is the position of the light used with the normal map as a Point
Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].