Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Updating forked master #1

Open
wants to merge 51 commits into
base: master
Choose a base branch
from
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
51 commits
Select commit Hold shift + click to select a range
57610fa
Explicitly define winding as being signed
icecream95 Oct 21, 2019
df27e4e
Fix build
jakobbotsch May 11, 2020
eecb7f4
Updates the README instructions for linux
Dig-Doug Sep 25, 2019
9337e12
Several fixes for make install (#437)
DarthGandalf Sep 24, 2020
e679507
Improve debug builds for MSVC (#443)
Bromeon Oct 30, 2020
8db2f62
Fix compiler error due to memset on type with non-trivial constructors
jakobbotsch Oct 30, 2020
65b314a
Fix shared library build
intelligide Aug 7, 2020
24230e8
Bugfix/chunkytrimesh subdivide maxnodes (#451)
kyeonghopark Nov 17, 2020
6624e7a
fix an index error
Wisdommmmmmmm Nov 13, 2020
9dc88fc
Validate constraint: #polygons per tile (#449)
Bromeon Nov 19, 2020
ec05c9e
Update build instructions for Windows
jakobbotsch Nov 19, 2020
c32297c
Fixed run RecastDemo on MVS
Nov 19, 2020
cf4f3e1
Poly query API: expose distance and isOverPoly (#448)
Bromeon Jan 23, 2021
e75adf8
Avoid reallocs of temp vectors (#467)
glebm Feb 15, 2021
1f25f9c
Install .pdb files only with MSVC
elsid Mar 3, 2021
63a4ee4
Add version and pkgconfig (#474)
psi29a Mar 5, 2021
c5cbd53
Fix MacOS builds on Travis (#475)
psi29a Mar 5, 2021
5a870d4
Fixed RecastDemo crash in macOS 10.11+
Prin-E Mar 16, 2022
c02d6fa
-Wunused-but-set-variable flagged variables removed
Jun 1, 2022
c187b7e
Removed broken IssueStats badges from README.md
grahamboree Jun 3, 2022
2164a27
Updated array size in docstring for dtMeshTile::verts
grahamboree Oct 7, 2022
3a1924e
Correction the comment of dtVperp2D
ZA139 Oct 9, 2022
314e94b
Fix the typo though of dtVperp2D function comment
ZA139 Oct 10, 2022
30edaf4
Fix -Wextra-semi GCC warnings by removing redundant semicolons
akortunov Oct 11, 2022
a425d03
Add vcpkg installation instructions
grdowns Sep 10, 2019
9df3e2e
Fix rounding error due to precision loss after optimization.
Learko Apr 17, 2020
0af470f
fix: use closestPointOnPoly instead of getPolyHeight in dtNavMeshQuer…
EfveZombie Oct 13, 2022
4e233f2
Added configuration protips from Mikko's blog to a FAQ
grahamboree Oct 12, 2022
c14a5a5
Ignore generated dSYM debug symbols archive on mac
grahamboree Oct 25, 2022
96dc90b
Fix deprecation warnings when using premake5
grahamboree Oct 25, 2022
0d1cbd3
Don't explicitly create a GL context since SDL_CreateWindowAndRendere…
grahamboree Oct 16, 2022
d576e71
Disable class-memaccess error to fix builds on Ubuntu with newer vers…
grahamboree Oct 29, 2022
7dfa984
Updated Catch2 testing library to v3.1.1
grahamboree Oct 29, 2022
bab65d7
Updated cmake build with Catch2 library location
grahamboree Oct 29, 2022
9098a81
Change to C++14 instead of C++20
grahamboree Oct 30, 2022
80e55eb
Update to a newer premake version that supports vs2019 and vs2022
grahamboree Oct 30, 2022
b0d71be
Removed VS2015 and fixed cmake generators for 2019, 2022
grahamboree Oct 30, 2022
e6b675b
Fastlz fix for -Wno-class-memaccess' is valid for C++/ObjC++ but not …
Dante-666 Nov 9, 2022
ea7bfbe
Fix clang linux builds (#578)
grahamboree Nov 12, 2022
5111139
Fixes for many low-severity compiler warnings (#576)
grahamboree Nov 12, 2022
17a19d0
Simplified macOS Build Process (#579)
grahamboree Nov 12, 2022
3d0f0a3
Github Workflows based CI system to replace Appveyor and Travis (#580)
grahamboree Nov 12, 2022
b1e04cf
Updated build badges in Readme to use workflows
grahamboree Nov 12, 2022
53f779f
install CMake config file with exported targets (#575)
SpaceIm Nov 20, 2022
2b0c244
Updated doxygen output (#581)
grahamboree Nov 23, 2022
3901c58
Fix incorrect rasterization at tile borders (#476)
ppiastucki Nov 23, 2022
4fef044
Unit test to check for crashes in rasterizing long, skinny triangles
grahamboree Nov 26, 2022
67ba9a2
Fix macOS CMake SDL linking (#584)
grahamboree Nov 26, 2022
250c304
Added development roadmap
grahamboree Nov 26, 2022
5f642c5
Updated readme with better grammar and high-level overview
grahamboree Nov 26, 2022
04ea2a5
Update README.md
grahamboree Nov 26, 2022
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
217 changes: 217 additions & 0 deletions .github/workflows/Build.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,217 @@
name: Build

on:
push:
branches: [ "**" ]
pull_request:
branches: [ "**" ]

jobs:
macOS-premake:
strategy:
matrix:
conf:
- Debug
- Release

runs-on: macos-latest

steps:
- uses: actions/checkout@v3

- name: Download & install SDL
run: |
curl -L -o SDL2.dmg https://github.com/libsdl-org/SDL/releases/download/release-2.24.2/SDL2-2.24.2.dmg
hdiutil attach SDL2.dmg
cp -r /Volumes/SDL2/SDL2.framework RecastDemo/Bin
hdiutil detach /Volumes/SDL2
rm SDL2.dmg

- name: Download & install premake
working-directory: RecastDemo
run: |
curl -L -o premake.tar.gz https://github.com/premake/premake-core/releases/download/v5.0.0-beta2/premake-5.0.0-beta2-macosx.tar.gz
tar -xzf premake.tar.gz
rm premake.tar.gz

- name: Run premake
working-directory: RecastDemo
run: ./premake5 xcode4

- name: Build With Xcode
working-directory: RecastDemo/Build/xcode4/
run: xcodebuild -scheme RecastDemo -configuration ${{matrix.conf}} -project RecastDemo.xcodeproj build

- name: Build Unit Tests With Xcode
working-directory: RecastDemo/Build/xcode4/
run: xcodebuild -scheme Tests -configuration ${{matrix.conf}} -project Tests.xcodeproj build

macos-cmake:
strategy:
matrix:
conf:
- Debug
- Release

runs-on: macos-latest

steps:
- uses: actions/checkout@v3
- name: Download & install SDL
run: |
curl -L -o SDL2.dmg https://github.com/libsdl-org/SDL/releases/download/release-2.24.2/SDL2-2.24.2.dmg
hdiutil attach SDL2.dmg
cp -r /Volumes/SDL2/SDL2.framework ${{github.workspace}}/RecastDemo/Bin/
hdiutil detach /Volumes/SDL2
rm SDL2.dmg

- name: Configure CMake
# Configure CMake in a 'build' subdirectory. `CMAKE_BUILD_TYPE` is only required if you are using a single-configuration generator such as make.
# See https://cmake.org/cmake/help/latest/variable/CMAKE_BUILD_TYPE.html?highlight=cmake_build_type
run: cmake -B ${{github.workspace}}/build -DCMAKE_BUILD_TYPE=${{matrix.conf}} -DSDL2_LIBRARY=${{github.workspace}}/RecastDemo/Bin/SDL2.framework

- name: Build
run: cmake --build ${{github.workspace}}/build --config ${{matrix.conf}}

linux-premake:
strategy:
matrix:
conf:
- debug
- release
compiler:
- clang
- gcc

runs-on: ubuntu-latest

steps:
- uses: actions/checkout@v3

- name: Install opengl and SDL
run: sudo apt-get install -y libgl1-mesa-dev libsdl2-dev

- name: Download & Install premake
working-directory: RecastDemo
run: |
curl -L -o premake.tar.gz https://github.com/premake/premake-core/releases/download/v5.0.0-beta2/premake-5.0.0-beta2-linux.tar.gz
tar -xzf premake.tar.gz
rm premake.tar.gz

- name: Run premake
working-directory: RecastDemo
run: ./premake5 --cc=${{matrix.compiler}} gmake2

- name: Build
working-directory: RecastDemo/Build/gmake2
run: make config=${{matrix.conf}} verbose=true

linux-cmake:
strategy:
matrix:
conf:
- Debug
- Release

runs-on: ubuntu-latest

steps:
- uses: actions/checkout@v3

- name: Install opengl and SDL
run: sudo apt-get install -y libgl1-mesa-dev libsdl2-dev

- name: Configure CMake
run: cmake -B ${{github.workspace}}/build -DCMAKE_BUILD_TYPE=${{matrix.conf}}

- name: Build
run: cmake --build ${{github.workspace}}/build --config ${{matrix.conf}}

windows-premake:
strategy:
matrix:
conf:
- Debug
- Release
vs-version:
- vs2019
- vs2022
include:
- vs-version: vs2019
version-range: '16.0'
runner: windows-2019
- vs-version: vs2022
version-range: '17.0'
runner: windows-2022

runs-on: ${{matrix.runner}}

steps:
- uses: actions/checkout@v3

- name: Add msbuild to PATH
uses: microsoft/[email protected]
with:
vs-version: ${{matrix.version-range}}

- name: Download and Install SDL
working-directory: RecastDemo/Contrib
shell: pwsh
run: |
(new-object System.Net.WebClient).DownloadFile("https://github.com/libsdl-org/SDL/releases/download/release-2.24.2/SDL2-devel-2.24.2-VC.zip","${{github.workspace}}/RecastDemo/Contrib/SDL.zip")
tar -xf SDL.zip
ren SDL2-2.24.2 SDL
del SDL.zip

- name: Download and Install Premake
working-directory: RecastDemo
shell: pwsh
run: |
(new-object System.Net.WebClient).DownloadFile("https://github.com/premake/premake-core/releases/download/v5.0.0-beta2/premake-5.0.0-beta2-windows.zip","${{github.workspace}}/RecastDemo/premake.zip")
tar -xf premake.zip
del premake.zip

- name: Run Premake
working-directory: RecastDemo
run: ./premake5.exe ${{matrix.vs-version}}

- name: Build
working-directory: RecastDemo/Build/${{matrix.vs-version}}
run: msbuild RecastDemo.vcxproj -property:Configuration=${{matrix.conf}}

windows-cmake:
strategy:
matrix:
conf:
- Debug
- Release
vs-version:
- vs2019
- vs2022
include:
- vs-version: vs2019
cmake-generator: Visual Studio 16 2019
runner: windows-2019
- vs-version: vs2022
cmake-generator: Visual Studio 17 2022
runner: windows-2022

runs-on: ${{matrix.runner}}

steps:
- uses: actions/checkout@v3

- name: Download and Install SDL
working-directory: RecastDemo/Contrib
shell: pwsh
run: |
(new-object System.Net.WebClient).DownloadFile("https://github.com/libsdl-org/SDL/releases/download/release-2.24.2/SDL2-devel-2.24.2-VC.zip","${{github.workspace}}/RecastDemo/Contrib/SDL.zip")
tar -xf SDL.zip
ren SDL2-2.24.2 SDL
del SDL.zip

- name: Configure CMake
run: cmake -G "${{matrix.cmake-generator}}" -B ${{github.workspace}}/build -D CMAKE_BUILD_TYPE=${{matrix.conf}} -D CMAKE_INSTALL_PREFIX=${{github.workspace}}/build

- name: Build with CMake
run: cmake --build ${{github.workspace}}/build --config ${{matrix.conf}}
107 changes: 107 additions & 0 deletions .github/workflows/Tests.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,107 @@
name: Tests

on:
push:
branches: [ "**" ]
pull_request:
branches: [ "**" ]

jobs:
macos-tests:
runs-on: macos-latest

steps:
- uses: actions/checkout@v3

- name: Download & install SDL
run: |
curl -L -o SDL2.dmg https://github.com/libsdl-org/SDL/releases/download/release-2.24.2/SDL2-2.24.2.dmg
hdiutil attach SDL2.dmg
cp -r /Volumes/SDL2/SDL2.framework RecastDemo/Bin
hdiutil detach /Volumes/SDL2
rm SDL2.dmg

- name: Download & install premake
working-directory: RecastDemo
run: |
curl -L -o premake.tar.gz https://github.com/premake/premake-core/releases/download/v5.0.0-beta2/premake-5.0.0-beta2-macosx.tar.gz
tar -xzf premake.tar.gz
rm premake.tar.gz

- name: Run premake
working-directory: RecastDemo
run: ./premake5 xcode4

- name: Build Unit Tests With Xcode
working-directory: RecastDemo/Build/xcode4/
run: xcodebuild -scheme Tests -configuration Debug -project Tests.xcodeproj build

- name: Run unit tests
working-directory: RecastDemo/Bin
run: ./Tests

linux-tests:
runs-on: ubuntu-latest

steps:
- uses: actions/checkout@v3

- name: Install opengl and SDL
run: sudo apt-get install -y libgl1-mesa-dev libsdl2-dev

- name: Download & Install premake
working-directory: RecastDemo
run: |
curl -L -o premake.tar.gz https://github.com/premake/premake-core/releases/download/v5.0.0-beta2/premake-5.0.0-beta2-linux.tar.gz
tar -xzf premake.tar.gz
rm premake.tar.gz

- name: Run premake
working-directory: RecastDemo
run: ./premake5 --cc=clang gmake2

- name: Build
working-directory: RecastDemo/Build/gmake2
run: make config=debug verbose=true

- name: Run Tests
working-directory: RecastDemo/Bin
run: ./Tests

windows-tests:
runs-on: windows-2022

steps:
- uses: actions/checkout@v3

- name: Add msbuild to PATH
uses: microsoft/[email protected]

- name: Download and Install SDL
working-directory: RecastDemo/Contrib
shell: pwsh
run: |
(new-object System.Net.WebClient).DownloadFile("https://github.com/libsdl-org/SDL/releases/download/release-2.24.2/SDL2-devel-2.24.2-VC.zip","${{github.workspace}}/RecastDemo/Contrib/SDL.zip")
tar -xf SDL.zip
ren SDL2-2.24.2 SDL
del SDL.zip

- name: Download and Install Premake
working-directory: RecastDemo
shell: pwsh
run: |
(new-object System.Net.WebClient).DownloadFile("https://github.com/premake/premake-core/releases/download/v5.0.0-beta2/premake-5.0.0-beta2-windows.zip","${{github.workspace}}/RecastDemo/premake.zip")
tar -xf premake.zip
del premake.zip

- name: Run Premake
working-directory: RecastDemo
run: ./premake5.exe vs2022

- name: Build
working-directory: RecastDemo/Build/vs2022
run: msbuild Tests.vcxproj -property:Configuration=Debug

- name: Run Tests
working-directory: RecastDemo/Bin/
run: ./Tests.exe
6 changes: 6 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -16,6 +16,9 @@ RecastDemo/Bin/Tests
# Build directory
RecastDemo/Build

# XCode debug symbols archive
RecastDemo/Bin/*.dSYM

# Ignore meshes
RecastDemo/Bin/Meshes/*

Expand Down Expand Up @@ -44,6 +47,9 @@ RecastDemo/Contrib/SDL/*
## Generated doc files
Docs/html

## CMake build cache
build

## IDE files
.idea/
cmake-build-*/
Loading