Git Product home page Git Product logo

msray's Introduction

msRay

PROJECT OVERVIEW

This is my AMIGA / WINDOWS Raycaster project. The main engine files has been written in C without using any external libraries, so the engine is OS independent. It can be easly adapted to OS that uses 32 bit RGBA buffer rendering.

Please note, that at the beginning the project was based on great Lode Vandevenne raycasting tutorial. If You are interested in raycasting, you should take a look on this tutorial. It is well explained and also contains sources in C. If you wish to understand my code its suggested that you take a look at that tutorial first.

However, as my project evolved, I added many optimalizations and tested different ways to render floor and ceiling trying to get as much performance I could.


The devpacks contains:

  • engine source files
  • AMIGA OS framework for RTG and HAM8 (as Visual Code project)
  • WINDOWS framework (as Visual Studio 2019 project)
  • Level Editor (for Windows, as Visual Studio 2019 project)
  • executables for Amiga OS and Windows (with demo level)

The goals:

  • The project was mainly targeted to Amigas with 32-bit RTG and faster CPUs like m68060 or "modernish" cards like V1200, IceDrake, Firebird, Emu68, PIStrom, PiAmiga, Warp1260 etc.
  • One of the main goals was to create a fully 32 bit raycaster renderer, that would be able to run in decent FPS.
  • Also, the full 32bit ARGB render was converted into native Amiga AGA HAM8 mode, that was able to display thousands of colors: For this "chunky to planar" conversions I used kalms-c2p routines collection: https://github.com/Kalmalyzer/kalms-c2p
  • The goals were achieved. The engine with some advanced features (like lightmaps) run very smooth on V1200 turbo card in 384x216 screen and other "modernish" cards like PIStorm, Emu68, Warp1260. But it also run very decent on older Amiga cards like CyberStorm Mk2 68060 50 Mhz.

Results:

Other:

  • You can find here many interesting things, examples, source codes and ideas if you are interested in Amiga RTG coding, raycasting coding, raycasting algorithms, ReAction GUI windows, etc.

msRay_devpack_v0.36 features:

  • free head movement by mouse moving
  • non regular walls
  • horizontal and vertical doors
  • walls/doors collisions
  • mip mapping walls and flats texturing (from 128px to 32px)
  • baked lighting
  • 'glowing pixels' (not affected by shadows)
  • info panel (auto scaled to screen width)
  • 32bit RTG and HAM8 output
  • level editor

msray's People

Contributors

mateusz83 avatar

Stargazers

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

Watchers

 avatar  avatar

msray's Issues

adding tiles

hi im in editor release (not debug?) to try to add tiles but when i right click nothing happens. Also are there enemies to add too? thanks!

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.