From b928dcd82d3a4aecd753705a3b8c3c40e9c44bd4 Mon Sep 17 00:00:00 2001 From: PedroEdiaz Date: Tue, 3 Dec 2024 22:42:53 -0600 Subject: [PATCH] Update Readme --- README.md | 96 +++++++++++-------------------------------------------- 1 file changed, 18 insertions(+), 78 deletions(-) diff --git a/README.md b/README.md index 805c89e..7869d68 100644 --- a/README.md +++ b/README.md @@ -1,92 +1,32 @@ -# Manigraph: Graficadora de variedades -Diaz Camacho Pedro Emilio +# Manigraph +Manigraph is a cutting-edge tool for multidimentional surface visualization, +capable of handling over a hundred dimensions. It allows users to interactively +explore each dimension in an intuitive and dynamic way. +Import your .klein files, which represents multidimentional surface. -# Resumen -manigraph es un graficador interactiva de variedades que lee archivos binarios, con la información de -una variedad multidimensional y grafica esta variedad en una proyección tridimensional. - -# Dependencias -Para poder compilar el proyecto hace falta lo siguiente. -## Programas -- `cc`: Cualquier compilador de C. -- `git`: Gestor de dependencias. (Opcional) -- `make`: Herramienta para compilar automáticamente. (Opcional) - -## Librerías -- `openGL`: A cross-platform API for rendering 2D and 3D graphics. (no incluida) -- `glew`: The OpenGL Extension Wrangler Library (no incluida) -- `glfw`: A multi-platform library for OpenGL, OpenGL ES, Vulkan, window and input. -- `cglm`: Highly Optimized 2D / 3D Graphics Math (glm) for C. -### Linux -Para compilar `glfw` en linux hacen falta las siguientes librerías. (no incluidas) -- `x11`: libXcursor-devel libXi-devel libXinerama-devel libXrandr-devel -- `wayland`: libwayland-dev libxkbcommon-dev wayland-protocols - -# Descargas -- [git](https://git-scm.com/downloads/win) -- [MinGW](https://github.com/niXman/mingw-builds-binaries/releases) -- [glew](https://glew.sourceforge.net/) - -# Clonar el código fuente +# Source code ``` -git clone https://gitea.adles.top/software/manigraph.git +git clone https://gitea.axiolutions.top/software/manigraph.git cd manigraph git submodule update --init --recursive ``` -# Compilación -Para compilar manualmente el proyecto se puede usar `make` o ejecutar los comandos manualmente -en el código fuente de `manigraph`. +# Dependecies +You may need system specific dependecies to build *Manigraph*. +[https://www.glfw.org/docs/3.3/compile.html#compile_deps](Reference) -## Make -Los siguientes comandos sirven para compilar `manigraph` deacuerdo al sistema operativo. +## Linux +- `x11`: libXcursor-devel libXi-devel libXinerama-devel libXrandr-devel +- `wayland`: libwayland-dev libxkbcommon-dev wayland-protocols + +# Building +A C compiler is needed for building *Manigraph*. and any of those commands ``` make windows +./compile.bat make linux-x11 make linux-wayland make cocoa -``` - -## Manualmente -se pueden compilar el proyecto manualmente sin necesidad del programa `make`. - -### GLFW -Si tienes problemas compilando `GLFW` puedes checar su página web oficial -explicando el tema: [Compiling GLFW](https://www.glfw.org/docs/3.3/compile.html). - -#### Windows -``` -cc -fPIC -shared -D_GLFW_WIN32 -D_GLFW_BUILD_DLL ./ext/glfw/src/*.c -o glfw.dll -lgdi32 -``` - -#### Linux -``` -cc -fPIC -shared -D_GLFW_X11 -D_GLFW_BUILD_DLL ./ext/glfw/src/*.c -o libglfw.so -cc -fPIC -shared -D_GLFW_WAYLAND -D_GLFW_BUILD_DLL ./ext/glfw/src/*.c -o libglfw.so -``` - -#### Mac -``` -cc -fPIC -shared -D_GLFW_COCOA -D_GLFW_BUILD_DLL ./ext/glfw/src/*.c -o libglfw.so -``` - -### Manigraph -#### Windows -``` -cc -I ext/cglm/include/ -I ext/glfw/include/ src/*.c -o manigraph -L. -lglfw -lopengl32 -lglew32 -``` -#### Linux -``` -cc -I ext/cglm/include/ -I ext/glfw/include/ src/*.c -o manigraph -L. -lglfw -lGL -lGLEW -``` -#### Mac -``` -cc -framework GL -I ext/cglm/include/ -I ext/glfw/include/ src/*.c -o manigraph -L. -lglfw -lGLEW -``` - -# Ejecutar -En linux se puede ejecutar el programa sin instalar la libreria de glfw usando: -``` -LD_LIBRARY_PATH=. ./manigraph +make CC=emcc wasm ```