{"id":23268688,"url":"https://github.com/maxrdz/ott-panda","last_synced_at":"2026-02-06T22:02:10.414Z","repository":{"id":264916351,"uuid":"846759367","full_name":"maxrdz/ott-panda","owner":"maxrdz","description":"Fork of open-toontown's panda.","archived":false,"fork":false,"pushed_at":"2024-08-23T22:38:26.000Z","size":150974,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"master","last_synced_at":"2025-02-05T00:34:04.147Z","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":"other","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/maxrdz.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":"CONTRIBUTING.md","funding":".github/FUNDING.yml","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},"funding":{"open_collective":"panda3d"}},"created_at":"2024-08-23T22:33:35.000Z","updated_at":"2024-08-23T22:38:45.000Z","dependencies_parsed_at":"2024-11-26T19:50:02.641Z","dependency_job_id":null,"html_url":"https://github.com/maxrdz/ott-panda","commit_stats":null,"previous_names":["maxrdz/ott-panda"],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/maxrdz%2Fott-panda","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/maxrdz%2Fott-panda/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/maxrdz%2Fott-panda/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/maxrdz%2Fott-panda/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/maxrdz","download_url":"https://codeload.github.com/maxrdz/ott-panda/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":238486868,"owners_count":19480490,"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":"2024-12-19T17:28:41.196Z","updated_at":"2026-02-06T22:02:10.408Z","avatar_url":"https://github.com/maxrdz.png","language":"C++","funding_links":["https://opencollective.com/panda3d"],"categories":[],"sub_categories":[],"readme":"[![Build Status](https://github.com/panda3d/panda3d/workflows/Continuous%20Integration/badge.svg?branch=master)](https://github.com/panda3d/panda3d/actions?query=branch%3Amaster+workflow%3A%22Continuous+Integration%22)\n[![OpenCollective](https://opencollective.com/panda3d/backers/badge.svg)](https://opencollective.com/panda3d)\n[![OpenCollective](https://opencollective.com/panda3d/sponsors/badge.svg)](https://opencollective.com/panda3d)\n\n\u003cimg src=\"https://avatars2.githubusercontent.com/u/590956?v=3\u0026s=500\" align=\"right\" width=\"200\"/\u003e\n\nPanda3D\n=======\n\nPanda3D is a game engine, a framework for 3D rendering and game development for\nPython and C++ programs.  Panda3D is open-source and free for any purpose,\nincluding commercial ventures, thanks to its\n[liberal license](https://www.panda3d.org/license/). To learn more about\nPanda3D's capabilities, visit the [gallery](https://www.panda3d.org/gallery/)\nand the [feature list](https://www.panda3d.org/features/).  To learn how to\nuse Panda3D, check the [documentation](https://www.panda3d.org/documentation/)\nresources. If you get stuck, ask for help from our active\n[community](https://discourse.panda3d.org).\n\nPanda3D is licensed under the Modified BSD License.  See the LICENSE file for\nmore details.\n\nInstalling Panda3D\n==================\n\nThe latest Panda3D SDK can be downloaded from\n[this page](https://www.panda3d.org/download/sdk-1-10-14/).\nIf you are familiar with installing Python packages, you can use\nthe following command:\n\n```bash\npip install panda3d\n```\n\nThe easiest way to install the latest development build of Panda3D\ninto an existing Python installation is using the following command:\n\n```bash\npip install --pre --extra-index-url https://archive.panda3d.org/ panda3d\n```\n\nIf this command fails, please make sure your version of pip is up-to-date.\n\nIf you prefer to install the full SDK with all tools, the latest development\nbuilds can be obtained from [this page](https://www.panda3d.org/download.php?version=devel\u0026sdk).\n\nThese are automatically kept up-to-date with the latest GitHub version of Panda.\n\nBuilding Panda3D\n================\n\nWindows\n-------\n\nYou can build Panda3D with the Microsoft Visual C++ 2015, 2017, 2019 or 2022\ncompiler, which can be downloaded for free from the [Visual Studio site](https://visualstudio.microsoft.com/downloads/).\nYou will also need to install the [Windows SDK](https://developer.microsoft.com/en-us/windows/downloads/windows-sdk),\nand if you intend to target Windows Vista, you will also need the\n[Windows 8.1 SDK](https://go.microsoft.com/fwlink/p/?LinkId=323507).\n\nYou will also need the thirdparty dependency libraries available for\nthe build scripts to use.  These are available from one of these two URLs,\ndepending on whether you are on a 32-bit or 64-bit system, or you can\n[click here](https://github.com/rdb/panda3d-thirdparty) for instructions on\nbuilding them from source.\n\n- https://www.panda3d.org/download/panda3d-1.10.14/panda3d-1.10.14-tools-win64.zip\n- https://www.panda3d.org/download/panda3d-1.10.14/panda3d-1.10.14-tools-win32.zip\n\nAfter acquiring these dependencies, you can build Panda3D from the command\nprompt using the following command.  Change the `--msvc-version` option based\non your version of Visual C++; 2022 is 14.3, 2019 is 14.2, 2017 is 14.1, and\n2015 is 14.  Remove the `--windows-sdk=10` option if you need to support\nWindows Vista, which requires the Windows 8.1 SDK.\n\n```bash\nmakepanda\\makepanda.bat --everything --installer --msvc-version=14.3 --windows-sdk=10 --no-eigen --threads=2\n```\n\nWhen the build succeeds, it will produce an .exe file that you can use to\ninstall Panda3D on your system.\n\n**Note:** you may choose to remove `--no-eigen` and build with Eigen support in\norder to improve runtime performance.  However, this will cause the build to\ntake hours to complete, as Eigen is a heavily template-based library, and the\nMSVC compiler does not perform well under those circumstances.\n\nLinux\n-----\n\nBuilding Panda3D on Linux is easy.  All you need is to invoke the makepanda\nscript using the version of Python that you want Panda3D to be built against.\n\nRun makepanda.py with the --help option to see which options are available.\nUsually, you will want to specify the --everything option (which builds with\nsupport for all features for which it detects the prerequisite dependencies)\nand the --installer option (which produces an installable .deb or .rpm file\nfor you to install, depending on your distribution).\n\nThe following command illustrates how to build Panda3D with some common\noptions:\n```bash\npython3 makepanda/makepanda.py --everything --installer --no-egl --no-gles --no-gles2 --no-opencv\n```\n\nYou will probably see some warnings saying that it's unable to find several\ndependency packages.  You should determine which ones you want to include in\nyour build and install the respective development packages.  You may visit\n[this manual page](https://docs.panda3d.org/1.11/python/distribution/thirdparty-licenses)\nfor an overview of the various dependencies.\n\nIf you are on Ubuntu, this command should cover the most frequently\nused third-party packages:\n\n```bash\nsudo apt-get install build-essential pkg-config fakeroot python3-dev libpng-dev libjpeg-dev libtiff-dev zlib1g-dev libssl-dev libx11-dev libgl1-mesa-dev libxrandr-dev libxxf86dga-dev libxcursor-dev bison flex libfreetype6-dev libvorbis-dev libeigen3-dev libopenal-dev libode-dev libbullet-dev nvidia-cg-toolkit libgtk-3-dev libassimp-dev libopenexr-dev\n```\n\nOnce Panda3D has built, you can either install the .deb or .rpm package that\nis produced, depending on which Linux distribution you are using.  For example,\nto install the package on Debian or Ubuntu, use this:\n\n```bash\nsudo dpkg -i panda3d*.deb\n```\n\nIf you are not using a Linux distribution that supports .deb or .rpm packages, you\nmay have to use the installpanda.py script instead, which will directly copy the\nfiles into the appropriate locations on your computer.  You may have to run the\n`ldconfig` tool in order to update your library cache after installing Panda3D.\n\nAlternatively, you can add the `--wheel` option, which will produce a .whl\nfile that can be installed into a Python installation using `pip`.\n\nmacOS\n-----\n\nOn macOS, you will need to download a set of precompiled thirdparty packages in order to\ncompile Panda3D, which can be acquired from [here](https://www.panda3d.org/download/panda3d-1.10.14/panda3d-1.10.14-tools-mac.tar.gz).\n\nAfter placing the thirdparty directory inside the panda3d source directory,\nyou may build Panda3D using a command like the following:\n\n```bash\npython makepanda/makepanda.py --everything --installer\n```\n\nYou may target a specific minimum macOS version using the --osxtarget flag\nfollowed by the release number, eg. 10.9 or 10.14.\n\nIf the build was successful, makepanda will have generated a .dmg file in\nthe source directory containing the installer.  Simply open it and run the\npackage file in order to install the SDK onto your system.\n\nFreeBSD\n-------\n\nBuilding on FreeBSD is very similar to building on Linux.  You will need to\ninstall the requisite packages using the system package manager.  To install\nthe recommended set of dependencies, you can use this command:\n\n```bash\npkg install pkgconf bison png jpeg-turbo tiff freetype2 harfbuzz eigen squish openal opusfile libvorbis libX11 mesa-libs ode bullet assimp openexr\n```\n\nYou will also need to choose which version of Python you want to use.\nInstall the appropriate package for it (such as `python37` or `python38`) and\nrun the makepanda script with your chosen Python version:\n\n```bash\npython3.7 makepanda/makepanda.py --everything --installer --no-egl --no-gles --no-gles2\n```\n\nIf successful, this will produce a .pkg file in the root of the source\ndirectory which you can install using `pkg install`.\n\nAndroid\n-------\n\nAlthough it's possible to build Panda3D on an Android device using the\n[termux](https://termux.com/) shell, the recommended route is to cross-compile\n.whl files using the SDK and NDK, which can then be used by the `build_apps`\ncommand to build a Python application into an .apk or .aab bundle.  You will\nneed to get the latest thirdparty packages, which can be obtained from the\nartifacts page of the last successful run here:\n\nhttps://github.com/rdb/panda3d-thirdparty/actions?query=branch%3Amain+is%3Asuccess+event%3Apush\n\nThis does not include Python at the moment, which can be extracted from\n[this archive](https://rdb.name/thirdparty-android.tar.gz) instead.\n\nThese commands show how to compile wheels for the supported Android ABIs:\n\n```bash\nexport ANDROID_SDK_ROOT=/home/rdb/local/android\npython3.8 makepanda/makepanda.py --everything --outputdir built-droid-arm64 --arch arm64 --target android-21 --threads 6 --wheel\npython3.8 makepanda/makepanda.py --everything --outputdir built-droid-armv7a --arch armv7a --target android-19 --threads 6 --wheel\npython3.8 makepanda/makepanda.py --everything --outputdir built-droid-x86_64 --arch x86_64 --target android-21 --threads 6 --wheel\npython3.8 makepanda/makepanda.py --everything --outputdir built-droid-x86 --arch x86 --target android-19 --threads 6 --wheel\n```\n\nIt is now possible to use the generated wheels with `build_apps`, as explained\non this page:\n\nhttps://discourse.panda3d.org/t/deployment-for-android/28226\n\nRunning Tests\n=============\n\nInstall [PyTest](https://docs.pytest.org/en/latest/getting-started.html#installation)\nand run the `pytest` command.  If you have not installed Panda3D, you will\nneed to configure your environment by pointing the `PYTHONPATH` variable at\nthe `built` directory.  On Linux, you will also need to point the\n`LD_LIBRARY_PATH` variable at the `built/lib` directory.\n\nAs a convenience, you can alternatively pass the `--tests` option to makepanda.\n\nReporting Issues\n================\n\nIf you encounter any bugs when using Panda3D, please report them in the bug\ntracker.  This is hosted at:\n\n  https://github.com/panda3d/panda3d/issues\n\nMake sure to first use the search function to see if the bug has already been\nreported.  When filling out a bug report, make sure that you include as much\ninformation as possible to help the developers track down the issue, such as\nyour version of Panda3D, operating system, architecture, and any code and\nmodels that are necessary for the developers to reproduce the issue.\n\nIf you're not sure whether you've encountered a bug, feel free to ask about\nit in the forums or the IRC channel first.\n\nSupporting the Project\n======================\n\nIf you would like to support the project financially, visit\n[our campaign on OpenCollective](https://opencollective.com/panda3d).  Your\ncontributions help us accelerate the development of Panda3D.\n\nFor the list of backers, see the [BACKERS.md](BACKERS.md) file or visit the\n[Sponsors page](https://www.panda3d.org/sponsors) on our web site.  Thank you\nto everyone who has donated!\n\n\u003ca href=\"https://opencollective.com/panda3d\" target=\"_blank\"\u003e\n  \u003cimg src=\"https://opencollective.com/panda3d/contribute/button@2x.png?color=blue\" width=300 /\u003e\n\u003c/a\u003e\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmaxrdz%2Fott-panda","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fmaxrdz%2Fott-panda","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmaxrdz%2Fott-panda/lists"}