Git Product home page Git Product logo

engine-3d's Introduction

ME :

Rastérisation

License: MIT CSFML: 2.5 vosk-api: 0.3.30 C: 11 OS: Linux Build Status Version

Rastérisation in C with CSFML lib

Status: in progress

🪧 Table of Contents

📝 DESCRIPTION

Le but de ce projet est d’implémenter la méthode de rastérisation utilisé par de nombreux moteurs 3D pour sa rapidité et ses possibilités comparé au Ray Tracing.
Mon objectif final est de pouvoir proposer un rendu 3d graphique de n’importe quel objet importé ainsi que de pouvoir me déplacer pour l’observer sous d’autres angles en temps réel.

GOAL

Il faut : ✅

0.1 dans un premier temps parser un fichier (.obj). ✅
0.2 dans un second temps implémenter une Projection matricielle. ✅
0.3 dans un troisième temps implémenter le Clipping de Cohen-Sutherland. ✅
0.4 dans un quatrième temps ajout des déplacements de la caméra. ✅
0.5 dans un cinquième temps implémenter le Texture mapping.
0.6 dans un sixième temps implémenter un Z-buffer/Deph-buffer.

🚚 RUNNING

# Clone repository
$ git clone https://github.com/MasterLaplace/Engine-3D.git
$ cd Engine-3D

# Engine
$ make re
$ ./bin/engine.out

# Server
$ make server
$ ./src/server/server.out

# Client
$ make client
$ ./src/client/client.out [vocal mode: -v]

# Manager
$ make manager
$ ./src/manager/manager.out [help|clean|create] [layer_name]

INTERACTIONS

Key Action
W Move forward
S Move backward
A Move left
D Move right
Q Move up
E Move down
Rotate up
Rotate down
Rotate left
Rotate right
R Reset camera
ESC Quit
SPACE Pause
ENTER Next layer
BACKSPACE Previous layer
TAB Toggle layer
F1 Toggle debug
F2 Toggle wireframe
F3 Toggle texture
F4 Toggle normals
F5 Toggle lights
F6 Toggle shadows
F7 Toggle ambient occlusion
F8 Toggle bloom
F9 Toggle motion blur
F10 Toggle depth of field
F11 Toggle anti-aliasing
F12 Toggle vignette
MOUSE WHEEL Zoom
MOUSE LEFT Rotate
MOUSE RIGHT Translate
MOUSE MIDDLE Select
MOUSE LEFT Select
MOUSE RIGHT Select

🔧 DOCUMENTATION

📜 LICENSE

This project is licensed under the terms of the MIT License.

Copyright © 2023-2024 Master_Laplace.

📬 CONTACTS

This libs has been carried out by:

  • GitHub MasterLaplace

ME.inc

engine-3d's People

Contributors

masterlaplace avatar

Stargazers

 avatar  avatar  avatar  avatar

Watchers

 avatar

Forkers

sigmanificient

engine-3d's Issues

Fix build error on Uninitialized Fedora OS

Fix the sctipt of CSFML installation

  • Do a condition for severals packages managers (DNF or APT)

Update gitignore

  • Add Project folder
  • Add launcher
  • Add requirement.txt

Fix Makefile Error

  • Add the command line for installing PyQt5

simple obj file parser

Simple OBJ File Parser

Description

A simple obj file parser to manage a list of triangles.

Implement Engine module

  • Implement Clock module
  • Implement Window module
  • Implement Config module
  • Implement Math module

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.