Giter VIP home page Giter VIP logo

zafraedu / cub3d Goto Github PK

View Code? Open in Web Editor NEW
0.0 1.0 1.0 20.03 MB

Este proyecto está inspirado en el mundialmente famoso juego Wolfenstein 3D, que fue el primer FPS de la historia. Al utilizar la biblioteca MLX42 y nuestro algoritmo de raycasting.

License: Other

Makefile 0.84% C 90.05% C++ 7.23% GLSL 0.15% Batchfile 0.20% Shell 0.18% Python 1.35%
3d 42 42born2code 42projects 42school cub3d cub3d-42 game math raycasting wolfenstein-3d

cub3d's Introduction

header cub3d


AboutHow to useMandatoryNorminetteLicense

ABOUT

Este proyecto está inspirado en el mundialmente famoso juego Wolfenstein 3D, que Fue el primer FPS de la historia. Le permitirá explorar la emisión de rayos. Tu objetivo será Crea una vista dinámica dentro de un laberinto, en el que tendrás que encontrar tu camino.

Click aquí para ver el PDF del proyecto.

Click aquí para ver un documento guía del proyecto.

HOW TO USE

Dependencies

Antes de ejecutar el programa, asegúrese de tener instaladas las bibliotecas necesarias:

MacOS

brew update && brew install glfw

si eres estudiate de 42 y no tienes homebrew instalado, ejecuta el siguiente comando para descargarlo como usuario

curl -fsSL https://rawgit.com/kube/42homebrew/master/install.sh | zsh

Linux

sudo apt update && sudo apt install build-essential libx11-dev libglfw3-dev libglfw3 xorg-dev

Compile

Copia y pega este codigo para descargar y copilar el proyecto.

git clone https://github.com/zafraedu/cub3d.git && cd cub3d && make

Makefile rules

  • make - Compila los archivos y genera el ejecutable cub3D;
  • make clean - Eliminas todos los objetos (*.o) generados al compilar;
  • make fclean - Elimina todos los objetos más el ejecutable;
  • make re - usa make fclean + make;

Usage

Al ejecutarlo, especificamos como parámetro el mapa del juego en la carpeta assets/maps/ con la extención .cub

Ejemplo:

./cub3D assets/maps/map.cub

Mandatory

Nombre del programa cub3D
Archivos a entregar Makefile, *.h, *.c
Argumentos un mapa en el formato *.cub
Makefile NAME, all, clean, fclean, re
Elementos autorizados
  • open(), close(), read(), write(), printf(), malloc(), free(), perror(), strerror(), exit()
  • todas las funciones de la libreria math
  • todas las fuciones de la libreria MinilibX
¿Libft permitido? Si
Descripción Debes crear un gráfico 3D “realista” representación del interior de un laberinto desde un perspectiva en primera persona. Tienes que crear esto. representación utilizando los principios de Ray-Casting

Norme

En 42 School, se espera que casi todos los proyectos se escriban de acuerdo con la Norma, que es el estándar de codificación de la escuela.

- No for, do...while, switch, case, goto, ternary operators and variable-length arrays are allowed
- - Each function must be a maximum of 25 lines, not counting the function's curly brackets
- - Each line must be at most 80 columns wide, comments included
- - A function can take 4 named parameters maximum
- - No assigns and declarations in the same line (unless static)
- - You can't declare more than 5 variables per function
- - ...

42 NORMA información sobre las normas de código de 42. PDF

License

Este trabajo se publica bajo los términos de 42 Unlicense.

cub3d's People

Contributors

zafraedu avatar vincenag avatar

Watchers

 avatar

Forkers

vincenag

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.