Coder Social home page Coder Social logo

gmh5225 / gameengine-gameenginefromscratch Goto Github PK

View Code? Open in Web Editor NEW

This project forked from netwarm007/gameenginefromscratch

0.0 1.0 0.0 479.34 MB

配合我的知乎专栏写的项目

Home Page: https://zhuanlan.zhihu.com/c_119702958

License: Other

Shell 0.55% C++ 55.56% Python 4.39% C 2.34% Objective-C 0.43% Objective-C++ 7.16% HTML 0.60% CMake 26.21% Batchfile 0.54% Yacc 0.38% Lex 0.12% HLSL 1.73%

gameengine-gameenginefromscratch's Introduction

Game Engine From Scratch

CircleCI Build Status Build status GitHub license

配合我的知乎专栏当中的系列文章《从零开始手敲次世代游戏引擎》所写的项目。

This project is written by me as the sample of My articles Hand-made Next-Gen Game Engine From Scratch

このプロジェクトは私の連載中のゼロから始める手作り次世代ゲームエンジンのサンプルソースである

Platform Support Status

  • Windows 10 / 11
  • MacOS Catalina - Monterey
  • Linux (Build test on Ubuntu 20.04 - 22.04 and CentOS 7)
  • FreeBSD (Not tested recently, build might fail)
  • Android (Not tested recently, build might fail)
  • WebAssembly (Emscripten, not tested recently, build might fail)
  • PlayStation 4 (Not continued, related source code not disclosed due to NDA)
  • PlayStation Vita (Not continued, related source code not disclosed due to NDA)

Graphic API Support Status

  • OpenGL
  • OpenGL ES (Not tested recently)
  • Metal2
  • DirectX 12 (On going)
  • Vulkan (On going)
  • GNM (Not disclosed due to NDA)

Physics

  • Bullet
  • My Physics (on going)

Scene Graph

  • OpenGEX
  • Collada (On the roadmap, not implemented yet)

Shading Language

  • HLSL, auto convert to GLSL/Metal Performance Shader

Texture Format

  • JPEG
  • PNG
  • TGA
  • HDR
  • DDS
  • BMP
  • PVR (BC1 - 7)
  • ASTC

High Performance / Parallel Computing

  • ISPC

Dependencies

  • Windows -- Windows Platform SDK -- Visual Studio or Clang -- CMake

  • MacOS -- Xcode -- Xcode command line tools -- MacPorts -- CMake

  • Linux -- gcc/g++ or clang/clang++ -- uuid-dev libx11-dev libx11-xcb-dev libgl1-mesa-dev libnss3-dev libxss-dev libatk1.0-dev libatk-bridge2.0-dev libglib2.0-dev libpango1.0-dev libxi-dev libfontconfig1-dev libnspr4-dev libxcomposite-dev libxcursor-dev libxrender-dev libxtst-dev libxrandr-dev libgio2.0-cil-dev libdbus-1-dev libasound2-dev libcups2-dev libncurses5-dev

  • Android -- Android SDK -- Android NDK

Build Steps

Windows

scripts\build_crossguid
scripts\build_opengex
scripts\build_zlib
scripts\build_bullet
scripts\build_cef
scripts\build_glslangValidator
scripts\build_spirvcross
scripts\build_imgui
scripts\build_libispc-texcomp
scripts\build

MacOS & Linux

./scripts/build_crossguid.sh
./scripts/build_opengex.sh
./scripts/build_bullet.sh
./scripts/build_cef.sh
./scripts/build_glslangValidator.sh
./scripts/build_spirvcross.sh
./scripts/build_imgui
./scripts/build_libispc-texcomp
./scripts/build-ninja.sh

Cook Materials

Windows

scripts\cook_material

Mac)S & Linux

./scripts/cook_material

gameengine-gameenginefromscratch's People

Contributors

netwarm007 avatar sijieshen avatar xzrunner avatar

Watchers

 avatar

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.