8 Commits

Author SHA1 Message Date
Redacted
1f4913ae7d Update .gitea/workflows/buildtest.yml
All checks were successful
Run ReCI Build Test / Explore-Gitea-Actions (push) Successful in 1m47s
2024-10-04 23:36:34 -04:00
Redacted
1adaff6362 Update .gitea/workflows/buildtest.yml
All checks were successful
Run ReCI Build Test / Explore-Gitea-Actions (push) Successful in 1m56s
2024-10-04 23:23:33 -04:00
f1017eb1da fixed cmake_minimum_required using rebitch
All checks were successful
Run ReCI Build Test / Explore-Gitea-Actions (push) Successful in 1m48s
2024-08-26 19:53:47 -04:00
Redacted
b334095aaa Update README.md
All checks were successful
Run ReCI Build Test / Explore-Gitea-Actions (push) Successful in 2m0s
2024-08-06 00:49:21 -04:00
Redacted
8ec95df86c Update README.md
All checks were successful
Run ReCI Build Test / Explore-Gitea-Actions (push) Successful in 1m43s
2024-08-04 17:37:55 -04:00
f746d395b3 reci
All checks were successful
Run ReCI Build Test / Explore-Gitea-Actions (push) Successful in 5m33s
2024-07-30 10:28:50 -04:00
6dbe1c4616 Merge branch 'testing' 2024-07-17 16:04:44 -04:00
30ff52a3f8 Updated README to include libfreetype6-dev dependency for Ubuntu. Added an Additional Notes section thanking contributors and describing Re3D working on non-x86 architectures. 2024-07-15 15:53:09 -04:00
5 changed files with 54 additions and 2 deletions

View File

@@ -0,0 +1,22 @@
name: Run ReCI Build Test
run-name: Run ReCI Build Test For ${{ gitea.repository }}.
on: [push]
jobs:
Explore-Gitea-Actions:
runs-on: ubuntu-22.04
env:
RECI_GIT: https://git.redacted.cc/maxine/ReCI
RECI: /RECI
steps:
- run: echo "The job was automatically triggered by a ${{ gitea.event_name }} event."
- run: echo "This job is now running on a ${{ runner.os }} server hosted by Gitea!"
- run: echo "The name of your branch is ${{ gitea.ref }} and your repository is ${{ gitea.repository }}."
- name: Check out repository code
uses: actions/checkout@v3
- run: echo "The ${{ gitea.repository }} repository has been cloned to the runner."
- run: echo "The workflow is now ready to run your tests on the runner."
- run: echo "Install toolchain and run ReCI build test"
- run: apt-get update && apt-get install -y lua5.3 git libxrandr-dev && git clone $RECI_GIT $RECI
- run: lua $RECI/reci.lua -f $RECI/scripts/buildtools.reci -f reci/scripts/builddeps.reci -f $RECI/scripts/buildtest.reci
- run: echo "This job's status is ${{ job.status }}."

View File

@@ -1,4 +1,4 @@
cmake_minimum_required(VERSION 3.18)
cmake_minimum_required(VERSION 3.18..3.27)
project(Re3D
VERSION 1.0
LANGUAGES CXX C

View File

@@ -7,7 +7,7 @@ A classic 3D game-engine for Linux & Windows.
### Installing Dependencies
- Fedora ```sudo dnf install git cmake make gcc-g++ mesa-libGL-devel systemd-devel```
<br><br>
- Ubuntu ```sudo apt install git cmake make gcc g++ pkg-config libgl-dev libudev-dev```
- Ubuntu ```sudo apt install git cmake make gcc g++ pkg-config libgl-dev libudev-dev libfreetype6-dev```
<br><br>
- Archᵇᵗʷ ```sudo pacman -S git cmake make gcc libgl```
@@ -15,6 +15,22 @@ A classic 3D game-engine for Linux & Windows.
```bash
git clone https://git.redacted.cc/Redacted/Re3D.git && cd Re3D && mkdir build && cd build && cmake .. && make -j8
```
### What's The Goal?
The game development industry has lost sight of what made games fun. A massive amount of the development time will be focused on graphics instead, The result being a pretty game that's not fun to play. Or worse, A game that's released unfinished.
Open Source game engines or engine components are commonly under copyleft licenses. If you were to make use of it then the entire game would also have to be under the same license. In terms of making a game to sell they're useless.
So then, A simple game-engine with the goal of **all** of the code being public domain.
### Additional Notes
It is possible to run Re3D on ARM. Re3D is known to run on the X13s using Ubuntu 24.04 at a reported 500 FPS (Software Renderer) as of writing. Thank you to Richard Neale for this discovery!
It is also possible to run Re3D on the VisionFive2 (RISC-V). We've tested this not long ago and have made appropriate fixes since. If I remember correctly we were running Debian on the board. (FPS not documented, but we remember it being quite low - Maxine)
Richard Neale has also discovered Re3D can run on a Banana Pi F3 (RISC-V) running Armbian 24.5 at a reported 5 FPS. For armbian the Ubuntu instructions should apply and the package name for libfreetype is libfreetype-dev.
Testing of Re3D on a variety of CPU architectures is encouraged and greatly appreciated. Although we may not support every architecture at this current time we definitely appreciate any work put toward testing and porting to various architectures.
<div style="text-align: left; line-height: 0">
<h5>Donation</h5>
<h76><a href="monero:89P8iW1Ly6wbypAYegceveUKe36nGYSsAfQhwCu3JJDHGso3XdXwuYpEGRM14QhXo63idEyWu5xYRMRoiJYekGE34z8SDtu">Monero</a></h76>

View File

@@ -0,0 +1 @@
Main:new("Install build dependencies", "apt-get install -yq pkg-config libgl-dev libudev-dev libfreetype6-dev")

View File

@@ -58,18 +58,31 @@ Vector3 Entity::getScale() const {
}
void Entity::loadTexture(const std::string& file) {
for (const auto* e : engine->world->GetChildren())
if (instanceOf(this, e))
return;
Texture texture(this, file.c_str(), true);
}
void Entity::loadMultiTexture(const std::vector<std::string>& files) {
for (const auto* e : engine->world->GetChildren())
if (instanceOf(this, e))
return;
MultiTexture texture(this, files, true);
}
void Entity::loadMotionTexture(const std::vector<std::string>& files, u16 frameDelta, bool doAnim) {
for (const auto* e : engine->world->GetChildren())
if (instanceOf(this, e))
return;
MotionTexture(this, files, frameDelta, true, doAnim);
}
void Entity::loadGeometry(const std::string& file) {
for (const auto& vA : engine->world->geometryList)
for (const auto& reference : vA->usedBy)
if (instanceOf(this, reference))
return;
VertexArray vArray(this, file, true);
}