Merge branch 'release/1.10.x' into incoming

This commit is contained in:
rdb 2021-12-12 22:52:48 +01:00
commit fc625eec11
12 changed files with 53 additions and 39 deletions

View File

@ -40,7 +40,7 @@ jobs:
eigen: NO
- profile: macos-eigen-coverage-unity-xcode
os: macOS-latest
os: macOS-10.15
config: Coverage
unity: YES
generator: Xcode
@ -50,7 +50,7 @@ jobs:
eigen: YES
- profile: macos-nometa-standard-makefile
os: macOS-latest
os: macOS-10.15
config: Standard
unity: NO
generator: Unix Makefiles
@ -92,10 +92,10 @@ jobs:
- name: Install dependencies (macOS)
if: runner.os == 'macOS'
run: |
curl -O https://www.panda3d.org/download/panda3d-1.10.9/panda3d-1.10.9-tools-mac.tar.gz
tar -xf panda3d-1.10.9-tools-mac.tar.gz
mv panda3d-1.10.9/thirdparty thirdparty
rmdir panda3d-1.10.9
curl -O https://www.panda3d.org/download/panda3d-1.10.10/panda3d-1.10.10-tools-mac.tar.gz
tar -xf panda3d-1.10.10-tools-mac.tar.gz
mv panda3d-1.10.10/thirdparty thirdparty
rmdir panda3d-1.10.10
# Temporary hack so that pzip can run, since we are about to remove Cg anyway.
install_name_tool -id "$(pwd)/thirdparty/darwin-libs-a/nvidiacg/lib/libCg.dylib" thirdparty/darwin-libs-a/nvidiacg/lib/libCg.dylib
@ -124,16 +124,16 @@ jobs:
uses: actions/cache@v1
with:
path: thirdparty
key: ci-cmake-${{ runner.OS }}-thirdparty-v1.10.9-r1
key: ci-cmake-${{ runner.OS }}-thirdparty-v1.10.10-r1
- name: Install dependencies (Windows)
if: runner.os == 'Windows'
shell: powershell
run: |
if (!(Test-Path thirdparty/win-libs-vc14-x64)) {
$wc = New-Object System.Net.WebClient
$wc.DownloadFile("https://www.panda3d.org/download/panda3d-1.10.9/panda3d-1.10.9-tools-win64.zip", "thirdparty-tools.zip")
$wc.DownloadFile("https://www.panda3d.org/download/panda3d-1.10.10/panda3d-1.10.10-tools-win64.zip", "thirdparty-tools.zip")
Expand-Archive -Path thirdparty-tools.zip
Move-Item -Path thirdparty-tools/panda3d-1.10.9/thirdparty -Destination .
Move-Item -Path thirdparty-tools/panda3d-1.10.10/thirdparty -Destination .
}
- name: ccache (non-Windows)
@ -186,7 +186,7 @@ jobs:
- name: Setup Python (Python 3.6)
if: contains(matrix.python, 'YES')
uses: actions/setup-python@v1
uses: actions/setup-python@v2
with:
python-version: 3.6
- name: Configure (Python 3.6)
@ -218,7 +218,7 @@ jobs:
- name: Setup Python (Python 3.7)
if: contains(matrix.python, 'YES')
uses: actions/setup-python@v1
uses: actions/setup-python@v2
with:
python-version: 3.7
- name: Configure (Python 3.7)
@ -250,7 +250,7 @@ jobs:
- name: Setup Python (Python 3.8)
if: contains(matrix.python, 'YES')
uses: actions/setup-python@v1
uses: actions/setup-python@v2
with:
python-version: 3.8
- name: Configure (Python 3.8)
@ -282,7 +282,7 @@ jobs:
- name: Setup Python (Python 3.9)
if: contains(matrix.python, 'YES')
uses: actions/setup-python@v1
uses: actions/setup-python@v2
with:
python-version: 3.9
- name: Configure (Python 3.9)
@ -333,7 +333,7 @@ jobs:
if: "!contains(github.event.head_commit.message, '[skip ci]') && !contains(github.event.head_commit.message, '[ci skip]')"
strategy:
matrix:
os: [ubuntu-18.04, windows-2016, macOS-latest]
os: [ubuntu-18.04, windows-2016, macOS-10.15]
runs-on: ${{ matrix.os }}
steps:
- uses: actions/checkout@v1
@ -347,19 +347,19 @@ jobs:
shell: powershell
run: |
$wc = New-Object System.Net.WebClient
$wc.DownloadFile("https://www.panda3d.org/download/panda3d-1.10.9/panda3d-1.10.9-tools-win64.zip", "thirdparty-tools.zip")
$wc.DownloadFile("https://www.panda3d.org/download/panda3d-1.10.10/panda3d-1.10.10-tools-win64.zip", "thirdparty-tools.zip")
Expand-Archive -Path thirdparty-tools.zip
Move-Item -Path thirdparty-tools/panda3d-1.10.9/thirdparty -Destination .
Move-Item -Path thirdparty-tools/panda3d-1.10.10/thirdparty -Destination .
- name: Get thirdparty packages (macOS)
if: runner.os == 'macOS'
run: |
curl -O https://www.panda3d.org/download/panda3d-1.10.9/panda3d-1.10.9-tools-mac.tar.gz
tar -xf panda3d-1.10.9-tools-mac.tar.gz
mv panda3d-1.10.9/thirdparty thirdparty
rmdir panda3d-1.10.9
curl -O https://www.panda3d.org/download/panda3d-1.10.10/panda3d-1.10.10-tools-mac.tar.gz
tar -xf panda3d-1.10.10-tools-mac.tar.gz
mv panda3d-1.10.10/thirdparty thirdparty
rmdir panda3d-1.10.10
(cd thirdparty/darwin-libs-a && rm -rf rocket)
- name: Set up Python 3.9
uses: actions/setup-python@v1
uses: actions/setup-python@v2
with:
python-version: 3.9
- name: Build Python 3.9
@ -372,7 +372,7 @@ jobs:
python -m pip install pytest
PYTHONPATH=built LD_LIBRARY_PATH=built/lib DYLD_LIBRARY_PATH=built/lib python -m pytest
- name: Set up Python 3.8
uses: actions/setup-python@v1
uses: actions/setup-python@v2
with:
python-version: 3.8
- name: Build Python 3.8
@ -385,7 +385,7 @@ jobs:
python -m pip install pytest
PYTHONPATH=built LD_LIBRARY_PATH=built/lib DYLD_LIBRARY_PATH=built/lib python -m pytest
- name: Set up Python 3.7
uses: actions/setup-python@v1
uses: actions/setup-python@v2
with:
python-version: 3.7
- name: Build Python 3.7

View File

@ -52,8 +52,8 @@ Building Panda3D
Windows
-------
You can build Panda3D with the Microsoft Visual C++ 2015, 2017 or 2019 compiler,
which can be downloaded for free from the [Visual Studio site](https://visualstudio.microsoft.com/downloads/).
You can build Panda3D with the Microsoft Visual C++ 2015, 2017, 2019 or 2022
compiler, which can be downloaded for free from the [Visual Studio site](https://visualstudio.microsoft.com/downloads/).
You will also need to install the [Windows 10 SDK](https://developer.microsoft.com/en-us/windows/downloads/windows-10-sdk),
and if you intend to target Windows Vista, you will also need the
[Windows 8.1 SDK](https://go.microsoft.com/fwlink/p/?LinkId=323507).
@ -69,12 +69,12 @@ building them from source.
After acquiring these dependencies, you can build Panda3D from the command
prompt using the following command. Change the `--msvc-version` option based
on your version of Visual C++; 2019 is 14.2, 2017 is 14.1, and 2015 is 14.
Remove the `--windows-sdk=10` option if you need to support Windows Vista,
which requires the Windows 8.1 SDK.
on your version of Visual C++; 2022 is 14.3, 2019 is 14.2, 2017 is 14.1, and
2015 is 14. Remove the `--windows-sdk=10` option if you need to support
Windows Vista, which requires the Windows 8.1 SDK.
```bash
makepanda\makepanda.bat --everything --installer --msvc-version=14.2 --windows-sdk=10 --no-eigen --threads=2
makepanda\makepanda.bat --everything --installer --msvc-version=14.3 --windows-sdk=10 --no-eigen --threads=2
```
When the build succeeds, it will produce an .exe file that you can use to

View File

@ -153,7 +153,7 @@ def usage(problem):
print(" --everything (enable every third-party lib)")
print(" --directx-sdk=X (specify version of DirectX SDK to use: jun2010, aug2009)")
print(" --windows-sdk=X (specify Windows SDK version, eg. 7.1, 8.1 or 10. Default is 8.1)")
print(" --msvc-version=X (specify Visual C++ version, eg. 10, 11, 12, 14, 14.1, 14.2. Default is 14)")
print(" --msvc-version=X (specify Visual C++ version, eg. 10, 11, 12, 14, 14.1, 14.2, 14.3. Default is 14)")
print(" --use-icl (experimental setting to use an intel compiler instead of MSVC on Windows)")
print("")
print("The simplest way to compile panda is to just type:")
@ -1043,7 +1043,7 @@ if (COMPILER=="GCC"):
LibName(pkg, "-lDependEngine")
LibName(pkg, "-lCommandEngine")
LibName(pkg, "-lFoundation")
if pkg != "MAYA2020":
if pkg not in ("MAYA2020", "MAYA2022"):
LibName(pkg, "-lIMFbase")
if GetTarget() != 'darwin':
LibName(pkg, "-lOpenMayalib")

View File

@ -80,6 +80,7 @@ MSVCVERSIONINFO = {
(14,0): {"vsversion":(14,0), "vsname":"Visual Studio 2015"},
(14,1): {"vsversion":(15,0), "vsname":"Visual Studio 2017"},
(14,2): {"vsversion":(16,0), "vsname":"Visual Studio 2019"},
(14,3): {"vsversion":(17,0), "vsname":"Visual Studio 2022"},
}
########################################################################
@ -108,6 +109,7 @@ MAYAVERSIONINFO = [("MAYA6", "6.0"),
("MAYA2018","2018"),
("MAYA2019","2019"),
("MAYA2020","2020"),
("MAYA2022","2022"),
]
MAXVERSIONINFO = [("MAX6", "SOFTWARE\\Autodesk\\3DSMAX\\6.0", "installdir", "maxsdk\\cssdk\\include"),
@ -2402,7 +2404,7 @@ def SdkLocateMacOSX(archs = []):
# Prefer pre-10.14 for now so that we can keep building FMOD.
sdk_versions += ["10.13", "10.12", "10.11", "10.10", "10.9"]
sdk_versions += ["11.1", "11.0"]
sdk_versions += ["11.3", "11.1", "11.0"]
if 'arm64' not in archs:
sdk_versions += ["10.15", "10.14"]

View File

@ -663,7 +663,15 @@ process_report(PCHAR ptr, size_t size) {
if (status == HIDP_STATUS_SUCCESS) {
for (ULONG di = 0; di < count; ++di) {
if (data[di].DataIndex != _hat_data_index) {
nassertd(data[di].DataIndex < _indices.size()) continue;
if (data[di].DataIndex >= _indices.size()) {
if (device_cat.is_debug()) {
device_cat.debug()
<< "Ignoring out of range DataIndex " << data[di].DataIndex
<< "from raw device " << _path << "\n";
}
continue;
}
const Index &idx = _indices[data[di].DataIndex];
if (idx._axis >= 0) {
if (idx._signed) {

View File

@ -21,7 +21,7 @@
#ifdef HAVE_PYTHON
/**
* Extends GraphicsWindowProc to provde callback functionality to a python
* Extends GraphicsWindowProc to provide callback functionality to a Python
* program.
*/
class PythonGraphicsWindowProc: public GraphicsWindowProc,

View File

@ -235,7 +235,7 @@ private:
S_maximized = 0x10000,
};
// This bitmask represents the truefalse settings for various boolean flags
// This bitmask represents the true/false settings for various boolean flags
// (assuming the corresponding S_* bit has been set, above).
enum Flags {
F_undecorated = S_undecorated,

View File

@ -351,7 +351,7 @@ clear_custom_film_mat() {
* nearly perpendicular to the center of the frustum as possible. Without
* this bit, the orientation camera plane is defined by position of the four
* points (which should all be coplanar). With this bit, the camera plane is
* arbitarary, and may be chosen so that the four points do not themselves lie
* arbitrary, and may be chosen so that the four points do not themselves lie
* in the camera plane (but the points will still be within the frustum).
*
* FC_off_axis - This allows the resulting frustum to be off-axis to get the

View File

@ -361,7 +361,7 @@ lookup(LColor &color, PN_stdfloat u, PN_stdfloat v, PN_stdfloat w) const {
}
/**
* Works like TexturePeeker::lookup(), but instead uv-coordinates integer
* Works like TexturePeeker::lookup(), but instead of uv-coordinates, integer
* coordinates are used.
*/
void TexturePeeker::
@ -372,7 +372,7 @@ fetch_pixel(LColor &color, int x, int y) const {
}
/**
* Works like TexturePeeker::lookup(), but instead uv-coordinates integer
* Works like TexturePeeker::lookup(), but instead of uv-coordinates, integer
* coordinates are used.
*/
void TexturePeeker::

View File

@ -79,7 +79,7 @@ static TypedWritable *factory_callback(const FactoryParams &params){
// If the Python pointer is the last reference to it, make sure that the
// object isn't destroyed. We do this by calling unref(), which
// decreases the reference count without destroying the object.
if (result->ob_refcnt <= 1) {
if (Py_REFCNT(result) <= 1) {
ref_count->unref();
// Tell the Python wrapper object that it shouldn't try to delete the

View File

@ -108,6 +108,7 @@ struct MayaVerInfo maya_versions[] = {
{ "MAYA2018", "2018"},
{ "MAYA2019", "2019"},
{ "MAYA2020", "2020"},
{ "MAYA2022", "2022"},
{ 0, 0 },
};

View File

@ -24,6 +24,7 @@ from direct.showbase.ShowBase import ShowBase
from direct.task.Task import Task
from panda3d.core import TextNode, TransparencyAttrib
from panda3d.core import LPoint3, LVector3
from panda3d.core import SamplerState
# Constants that will control the behavior of the game. It is good to
# group constants like this so that they can be changed once without
@ -73,6 +74,8 @@ def loadObject(tex=None, pos=LPoint3(0, 0), depth=SPRITE_POS, scale=1,
if tex:
# Load and set the requested texture.
tex = base.loader.loadTexture("textures/" + tex)
tex.setWrapU(SamplerState.WM_clamp)
tex.setWrapV(SamplerState.WM_clamp)
obj.setTexture(tex, 1)
return obj