{"id":25420063,"url":"https://github.com/namelessvoid/nparticles","last_synced_at":"2025-08-26T00:07:51.433Z","repository":{"id":69698466,"uuid":"58328309","full_name":"namelessvoid/nparticles","owner":"namelessvoid","description":"Generic particle / n-body engine using OpenGL 4.3 compute shaders.","archived":false,"fork":false,"pushed_at":"2016-10-10T07:09:03.000Z","size":125,"stargazers_count":1,"open_issues_count":1,"forks_count":0,"subscribers_count":1,"default_branch":"master","last_synced_at":"2025-02-16T19:40:31.446Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"C++","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"zlib","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/namelessvoid.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2016-05-08T19:45:53.000Z","updated_at":"2024-04-18T08:25:18.000Z","dependencies_parsed_at":"2023-07-11T05:15:42.213Z","dependency_job_id":null,"html_url":"https://github.com/namelessvoid/nparticles","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/namelessvoid%2Fnparticles","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/namelessvoid%2Fnparticles/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/namelessvoid%2Fnparticles/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/namelessvoid%2Fnparticles/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/namelessvoid","download_url":"https://codeload.github.com/namelessvoid/nparticles/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":253961342,"owners_count":21991006,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":[],"created_at":"2025-02-16T19:35:46.456Z","updated_at":"2025-05-13T14:37:21.040Z","avatar_url":"https://github.com/namelessvoid.png","language":"C++","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Nameless Particle Engine\n\nThe Nameless Particle Engine (NParticles) is a particle and n-body simulation engine with GPGPU support. It is written in C++ and uses OpenGL 4.3 as render and GPGPU framework.\n\n**Table of contents**\n\u003c!-- MarkdownTOC depth=3 --\u003e\n\n- Compilation\n\t- Dependencies\n\t- Compile library with cmake\n\t- Compile samples manually\n- Sample applications\n- API\n- Licensing\n\n\u003c!-- /MarkdownTOC --\u003e\n\n## Compilation\n\n### Dependencies\n\nFollowing libraries have to be installed to compile the engine:\n\n- OpenGL (\u003e= 4.3)\n- GLEW (\u003e= 1.11.0)\n- GLFW (\u003e= 3.0.4)\n- GLM (\u003e= 0.9.6)\n- Boost filesystem (\u003e= 1.50)\n- pkgconfig (to find GLFW3)\n\nThe version numbers are those I used for compilation. Older versions may work as well (except for OpenGL!) but are not tested yet.\n\nSome Linux distributions do not install the FindGLM.cmake module when installing the GLM library. This file can be found [here](https://github.com/g-truc/glm/blob/1a4bc0d8a55123b06fdb7e866da9a8b9172446a4/util/FindGLM.cmake). Download this file into a directory (e.g. `cmake/Modules` inside the root directory of this engine). To make it available for cmake, add following line to the `CMakeLists.txt` inside the root directory:\n\n    SET(CMAKE_MODULE_PATH ${PROJECT_SOURCE_DIR}/cmake/Modules ${CMAKE_MODULE_PATH})\n\n**Note:** To run the engine, the OpenGL extension `GL_ARB_shading_language_include` is required! Future releases may get rid of this extension since it may not be supported by all drivers.\n\n\n\n### Compile library with cmake\n\nJust create a build directory: `mkdir build`\nChange to this directory, execute cmake and run make: `cd build \u0026\u0026 cmake .. \u0026\u0026 make`\n\nThis creates a static library placed in `lib/` inside the root directory. This library can be used to be linked again applications using the engine.\n\nThe samples shipped with the engine are stored in the `bin` directory located in the root directory of the engine. To execute these samples, they have to be called from inside the `bin` directory.\n\n\n\n### Compile samples manually\n\nTo manually compile one of the samples, following command can be used (from within the `build` directory):\n\n`$ g++ ../samples/solarsystem.cpp -o solarsystem -std=c++11 ../src/*.cpp -I../include/ -lGLEW -lGL -lglfw -lboost_filesystem -lboost_system`\n\n\n\n## Sample applications\n\nThe documentation of the sample applications can be found in `doc/samples.md`.\n\n\n## API\n\nNParticles ships with a *doxygen* API. Just run `doxygen` in the engines root folder.\n\nA class diagramm (full and simplified version) are located in `doc/diagrams`.\nYou need [Umlet](http://www.umlet.com/) to view them.\n\n## Licensing\n\nNParticles is published under the zlib license. The detailed license text is provided in `license.txt`.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fnamelessvoid%2Fnparticles","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fnamelessvoid%2Fnparticles","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fnamelessvoid%2Fnparticles/lists"}