Skip to content

Commit a7da7f6

Browse files
authored
Merge branch 'develop' into mjp/make_outline_hands_outline_independent_of_normal_scale
2 parents d157dce + a26bc7e commit a7da7f6

File tree

11 files changed

+1179
-486
lines changed

11 files changed

+1179
-486
lines changed
Lines changed: 38 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,38 @@
1+
---
2+
name: Bug report
3+
about: Create a report to help us improve
4+
title: ''
5+
labels: ''
6+
assignees: ''
7+
8+
---
9+
10+
**Describe the bug**
11+
A clear and concise description of what the bug is.
12+
13+
**To Reproduce**
14+
Steps to reproduce the behavior:
15+
1. Go to '...'
16+
2. Click on '....'
17+
3. Scroll down to '....'
18+
4. See error
19+
20+
**Expected behavior**
21+
A clear and concise description of what you expected to happen.
22+
23+
**Screenshots**
24+
If applicable, add screenshots to help explain your problem.
25+
26+
**Desktop (please complete the following information):**
27+
- OS: [e.g. iOS]
28+
- Browser [e.g. chrome, safari]
29+
- Version [e.g. 22]
30+
31+
**Smartphone (please complete the following information):**
32+
- Device: [e.g. iPhone6]
33+
- OS: [e.g. iOS8.1]
34+
- Browser [e.g. stock browser, safari]
35+
- Version [e.g. 22]
36+
37+
**Additional context**
38+
Add any other context about the problem here.

.github/ISSUE_TEMPLATE/custom.md

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,10 @@
1+
---
2+
name: Custom issue template
3+
about: Describe this issue template's purpose here.
4+
title: ''
5+
labels: ''
6+
assignees: ''
7+
8+
---
9+
10+
Lines changed: 20 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,20 @@
1+
---
2+
name: Feature request
3+
about: Suggest an idea for this project
4+
title: ''
5+
labels: ''
6+
assignees: ''
7+
8+
---
9+
10+
**Is your feature request related to a problem? Please describe.**
11+
A clear and concise description of what the problem is. Ex. I'm always frustrated when [...]
12+
13+
**Describe the solution you'd like**
14+
A clear and concise description of what you want to happen.
15+
16+
**Describe alternatives you've considered**
17+
A clear and concise description of any alternative solutions or features you've considered.
18+
19+
**Additional context**
20+
Add any other context or screenshots about the feature request here.

Packages/Tracking/CHANGELOG.md

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -11,13 +11,17 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
1111
### Added
1212
- Experimental Meta compatibility mode for the OpenXR provider
1313
- Added support to upgrade the plugin's Built In Render Pipeline materials (and as a result the example scenes) to the Universal Render Pipeline. This can be set to automatically prompt when the materials don't match the current render pipeline. It does not support downgrading.
14+
- Changed LeapC PInvoke signatures to support iOS
1415

1516
### Changed
1617
- Removed warning suggesting use of both input systems for OpenXR + Ultraleap compatibility now the new input system is fully supported
1718
- Updated all custom shaders to support the Universal Render Pipeline concurrently with the Built-in Render Pipeline
1819
- Updated Copyright year to 2025
1920
- Split tracking preview examples into different groups - common assets, main examples and examples that need the old input manager to work (e.g. UI input)
2021
- (Service Provider) Expose service IP and port as user settable variables
22+
- Functions for InterpolateFrame / InterpolateFrameFromTime / GetInterpolatedFrameSize will no longer call LeapC unless a valid device is passed/set
23+
- LeapServiceProvider Update will no longer request an interpolated frame without a valid device being set
24+
- LeapServiceProvider FixedUpdate will no longer request an interpolated frame without a valid device and connection, bringing it into line with Update
2125

2226
### Fixed
2327
- Fixed some warnings around runtime variables that were only used in editor mode
@@ -29,6 +33,7 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
2933
- Clients were not able to subscribe to the events on the PinchDetector and GrabDetector scripts as the properties were exposed as readonly.
3034
- GrabDetector detection logic was inverted, so open hands were interpreted as grabs. Now fixed.
3135
- Fixed issue with scale of outline in GenericHandShader if hand model normals are not a normalized length
36+
- Fixed issue with attachment hands red/green/blue materials meta file IDs clashing with the IDs of the files in the original examples, since being moved
3237

3338
### Known Issues
3439
- Pose detection scene does not illuminate all poses in green if built for mobile headsets when using URP (2022.3), spotlights don't work as intended on Unity 6.

Packages/Tracking/Core/Runtime/Materials/Built In Render Pipeline (Dynamically Upgradable)/Attachment Hands Example Blue.mat.meta

Lines changed: 1 addition & 1 deletion
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

Packages/Tracking/Core/Runtime/Materials/Built In Render Pipeline (Dynamically Upgradable)/Attachment Hands Example Green.mat.meta

Lines changed: 1 addition & 1 deletion
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

Packages/Tracking/Core/Runtime/Materials/Built In Render Pipeline (Dynamically Upgradable)/Attachment Hands Example Red.mat.meta

Lines changed: 1 addition & 1 deletion
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

Packages/Tracking/Core/Runtime/Plugins/LeapCSharp/Connection.cs

Lines changed: 22 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -140,6 +140,9 @@ public event EventHandler<ConnectionEventArgs> LeapConnection
140140

141141
private bool _disposed = false;
142142

143+
private bool _loggedNullDeviceWarningForGetInterpolatedFrame = false;
144+
private bool _loggedNullDeviceWarningForGetInterpolatedFrameSize = false;
145+
143146
public void Dispose()
144147
{
145148
Dispose(true);
@@ -428,7 +431,6 @@ private void handleTrackingMessage(ref LEAP_TRACKING_EVENT trackingMsg, UInt32 d
428431
}
429432
}
430433

431-
432434
public UInt64 GetInterpolatedFrameSize(Int64 time, Device device = null)
433435
{
434436
UInt64 size = 0;
@@ -440,15 +442,18 @@ public UInt64 GetInterpolatedFrameSize(Int64 time, Device device = null)
440442
}
441443
else
442444
{
443-
result = LeapC.GetFrameSize(_leapConnection, time, out size);
445+
if (!_loggedNullDeviceWarningForGetInterpolatedFrameSize)
446+
{
447+
UnityEngine.Debug.LogWarning($"Device is null, requesting the frame size without a valid device (handle) is no longer supported and should be considered obsolete");
448+
_loggedNullDeviceWarningForGetInterpolatedFrameSize = true;
449+
}
450+
result = eLeapRS.eLeapRS_Unsupported;
444451
}
445452

446453
reportAbnormalResults("LeapC get interpolated frame call was ", result);
447454
return size;
448455
}
449456

450-
451-
452457
public void GetInterpolatedFrame(Frame toFill, Int64 time, Device device = null)
453458
{
454459
UInt64 size = GetInterpolatedFrameSize(time, device);
@@ -461,7 +466,12 @@ public void GetInterpolatedFrame(Frame toFill, Int64 time, Device device = null)
461466
}
462467
else
463468
{
464-
result = LeapC.InterpolateFrame(_leapConnection, time, trackingBuffer, size);
469+
if (!_loggedNullDeviceWarningForGetInterpolatedFrame)
470+
{
471+
UnityEngine.Debug.LogWarning($"Device is null, requesting an interpolated frame without a valid device (handle) is no longer supported and should be considered obsolete");
472+
_loggedNullDeviceWarningForGetInterpolatedFrame= true;
473+
}
474+
result = eLeapRS.eLeapRS_Unsupported;
465475
}
466476

467477
reportAbnormalResults("LeapC get interpolated frame call was ", result);
@@ -482,12 +492,17 @@ public void GetInterpolatedFrameFromTime(Frame toFill, Int64 time, Int64 sourceT
482492

483493
if (device != null)
484494
{
485-
486495
result = LeapC.InterpolateFrameFromTimeEx(_leapConnection, device.Handle, time, sourceTime, trackingBuffer, size);
487496
}
488497
else
489498
{
490-
result = LeapC.InterpolateFrameFromTime(_leapConnection, time, sourceTime, trackingBuffer, size);
499+
if (!_loggedNullDeviceWarningForGetInterpolatedFrame)
500+
{
501+
UnityEngine.Debug.LogWarning($"Device is null, requesting an interpolated frame (from time) without a valid device (handle) is no longer supported and should be considered obsolete");
502+
_loggedNullDeviceWarningForGetInterpolatedFrame = true;
503+
}
504+
505+
result = eLeapRS.eLeapRS_Unsupported;
491506
}
492507

493508
reportAbnormalResults("LeapC get interpolated frame from time call was ", result);

0 commit comments

Comments
 (0)