IP Library Granted Patent US 10,933,320
Granted Patent B2
US 10,933,320 · App. 16/395,776 · Granted Mar 2, 2021

Method generating an input in an omnidirectional locomotion system

Inventors: Jan Goetgeluk (Austin, TX); Ricardo Soza (Austin, TX); Duane Bester (Austin, TX); James Douglas Shuffield (Cedar Park, TX)
Assignee: VIRTUIX HOLDINGS INC.
A63F13/40A63B69/0035A63B69/0064A63B71/0622A63F13/211A63F13/212A63F13/214A63F13/216A63F13/5255G06F3/011A63B2024/0096A63B2069/0037A63B2071/0638A63B2210/50A63B2220/10A63B2220/12A63B2220/16A63B2220/34A63B2220/40A63B2220/56A63B2220/70A63B2220/801A63B2220/805A63B2220/806A63B2225/093A63B2225/50
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 10,933,320
App. No.
16/395,776
Granted
Mar 2, 2021
Kind
B2
Abstract

A virtual environment can use an absolute orientation framework. An absolute orientation framework in a virtual environment can be activated using an omnidirectional locomotion platform. An absolute orientation framework enables a user's avatar to move independently from the current viewpoint or camera position. The user's avatar can move in an absolute manner relative to a virtual environment map.

Claims (78)

1. A method of generating an input for controlling an application from movement within a platform of an omnidirectional locomotion system configured to support a user on the platform, the method comprising:

receiving, from at least two or more sensors, movement data from movement within the platform configured to support the user on the platform;

calculating, at a processor, a velocity from the movement data;

calculating, at the processor, a heading from the movement data;

translating, at the processor, the velocity and the heading into 2-dimensional Cartesian coordinates;

normalizing, at the processor, the 2-dimensional Cartesian coordinates into a minimum to maximum scale range; and

transmitting, the normalized coordinates as the input for controlling the application.

2. The method of claim 1 , wherein the velocity is calculated by a distance a foot of a user travels divided by the time it took to travel the distance.

3. The method of claim 1 , wherein the velocity is calculated by a pedometry rate.

4. The method of claim 3 , wherein the pedometry rate is determined by monitoring a frequency of steps over a predefined interval.

5. The method of claim 1 , wherein the velocity is calculated by monitoring an acceleration of a foot of a user.

6. The method of claim 1 , wherein the velocity is calculated by normalizing an angular velocity.

7. The method of claim 6 , wherein the angular velocity is a change in rotation of a foot of a user.

8. The method of claim 1 , further comprising:

translating, at the processor, the heading relative to a real world axis.

9. The method of claim 8 , wherein the real world axis is magnetic North.

10. The method of claim 9 , further comprising:

calibrating, at the processor, the magnetic North to an initial orientation of a user by an offset.

11. The method of claim 1 , further comprising:

translating, at the processor, the heading relative to an orientation of a torso of a user.

12. The method of claim 1 , further comprising:

translating, at the processor, the heading relative to an orientation of a head of a user.

13. The method of claim 1 , wherein the minimum to maximum scale range is defined by gaming input descriptors.

14. The method of claim 1 , wherein a Y 2-dimensional Cartesian coordinate is for forward or backwards movement.

15. The method of claim 1 , wherein an X 2-dimensional Cartesian coordinate is for sideways movement.

16. The method of claim 1 , where the two or more sensors are located within the platform.

17. The method of claim 1 , where the two or more sensors are located outside the platform.

18. The method of claim 1 , where the two or more sensors are located under the platform.

19. A system for generating an input for controlling an application from movement within a platform of an omnidirectional locomotion system configured to support a user on the platform, the system comprising:

at least one processor; and

at least one memory storing instructions, which when executed by the at least one processor causes the at least one processor to:

receive, from at least two or more sensors, movement data from movement within the platform configured to support the user;

calculate a velocity from the movement data;

calculate a heading from the movement data;

translate the velocity and the heading into 2-dimensional Cartesian coordinates;

normalize the 2-dimensional Cartesian coordinates into a minimum to maximum scale range; and

transmit the normalized coordinates as the input.

20. The system of claim 19 , wherein the velocity is calculated by a distance a foot of a user travels divided by the time it took to travel the distance.

21. The system of claim 19 , wherein the velocity is calculated by a pedometry rate.

22. The system of claim 21 , wherein the pedometry rate is determined by monitoring a frequency of steps over a predefined interval.

23. The system of claim 19 , wherein the velocity is calculated by monitoring an acceleration of a foot of a user.

24. The system of claim 19 , wherein the velocity is calculated by normalizing an angular velocity.

25. The system of claim 24 , wherein the angular velocity is a change in rotation of a foot of a user.

26. The system of claim 19 , further comprising instructions, which when executed by the at least one processor causes the at least one processor to translate the heading relative to a real world axis.

27. The system of claim 26 , wherein the real world axis is magnetic North.

28. The system of claim 27 , further comprising instructions, which when executed by the at least one processor causes the at least one processor to calibrate the magnetic North to an initial orientation of a user by an offset.

29. The system of claim 19 , further comprising instructions, which when executed by the at least one processor causes the at least one processor to translate the heading relative to an orientation of a torso of a user.

30. The system of claim 19 , further comprising instructions, which when executed by the at least one processor causes the at least one processor to translate the heading relative to an orientation of a head of a user.

31. The system of claim 19 , wherein the minimum to maximum scale range is defined by gaming input descriptors.

32. The system of claim 19 , wherein a Y 2-dimensional Cartesian coordinate is for forward or backwards movement.

33. The system of claim 19 , wherein an X 2-dimensional Cartesian coordinate is for sideways movement.

34. The system of claim 19 , where the two or more sensors are located within the platform.

35. The system of claim 19 , where the two or more sensors are located outside the platform.

36. The system of claim 19 , where the two or more sensors are located under the platform.

37. A non-transitory computer readable medium storing instructions, which when executed by at least one processor causes the at least one processor to:

receive, from at least two or more sensors, movement data from movement within a platform of an omnidirectional locomotion system configured to support a user on the platform;

calculate a velocity from the movement data;

calculate a heading from the movement data;

translate the velocity and the heading into 2-dimensional Cartesian coordinates;

normalize the 2-dimensional Cartesian coordinates into a minimum to maximum scale range; and

transmit the normalized coordinates as an input for controlling an application.

38. The non-transitory computer readable medium of claim 37 , wherein the velocity is calculated by a distance a foot of a user travels divided by the time it took to travel the distance.

39. The non-transitory computer readable medium of claim 37 , wherein the velocity is calculated by a pedometry rate.

40. The non-transitory computer readable medium of claim 39 , wherein the pedometry rate is determined by monitoring a frequency of steps over a predefined interval.

41. The non-transitory computer readable medium of claim 37 , wherein the velocity is calculated by monitoring an acceleration of a foot of a user.

42. The non-transitory computer readable medium of claim 37 , wherein the velocity is calculated by normalizing an angular velocity.

43. The non-transitory computer readable medium of claim 42 , wherein the angular velocity is a change in rotation of a foot of a user.

44. The non-transitory computer readable medium of claim 37 , further comprising instructions, which when executed by the at least one processor causes the at least one processor to translate the heading relative to a real world axis.

45. The non-transitory computer readable medium of claim 44 , wherein the real world axis is magnetic North.

46. The non-transitory computer readable medium of claim 45 , further comprising instructions, which when executed by the at least one processor causes the at least one processor to calibrate the magnetic North to an initial orientation of a user by an offset.

47. The non-transitory computer readable medium of claim 37 , further comprising instructions, which when executed by the at least one processor causes the at least one processor to translate the heading relative to an orientation of a torso of a user.

48. The non-transitory computer readable medium of claim 37 , further comprising instructions, which when executed by the at least one processor causes the at least one processor to translate the heading relative to an orientation of a head of a user.

49. The non-transitory computer readable medium of claim 37 , wherein the minimum to maximum scale range is defined by gaming input descriptors.

50. The non-transitory computer readable medium of claim 37 , wherein a Y 2-dimensional Cartesian coordinate is for forward or backwards movement.

51. The non-transitory computer readable medium of claim 37 , wherein an X 2-dimensional Cartesian coordinate is for sideways movement.

52. The non-transitory computer readable medium of claim 37 , where the two or more sensors are located within the platform.

53. The non-transitory computer readable medium of claim 37 , where the two or more sensors are located outside the platform.

54. The non-transitory computer readable medium of claim 37 , where the two or more sensors are located under the platform.

Assignments (6)
SECURITY INTEREST Recorded Dec 22, 2025
From: VIRTUIX HOLDINGS INC.
To: STREETERVILLE CAPITAL, LLC
Reel/Frame 073293/0982 →
SECURITY INTEREST Recorded Nov 3, 2025
From: VIRTUIX HOLDINGS INC.
To: STREETERVILLE CAPITAL, LLC
Reel/Frame 072766/0625 →
SECURITY INTEREST Recorded Aug 29, 2025
From: VIRTUIX HOLDINGS INC.
To: STREETERVILLE CAPITAL, LLC
Reel/Frame 072769/0698 →
RELEASE OF SECURITY INTEREST Recorded Aug 28, 2025
From: VENTURE LENDING & LEASING IX, INC.; WTI FUND X, INC.
To: VIRTUIX HOLDINGS INC.; VLRTUIX INC.; VLRTUIX MANUFACTURING LIMITED
Reel/Frame 072683/0334 →
CORRECTIVE ASSIGNMENT TO CORRECT THE APPLICATION NUMBERS CHANGED TO PATENT NUMBERS PREVIOUSLY RECORDED AT REEL: 59762 FRAME: 505. ASSIGNOR(S) HEREBY CONFIRMS THE SECURITY INTEREST. Recorded Aug 12, 2025
From: VIRTUIX HOLDINGS INC.; VIRTUIX INC.; VIRTUIX MANUFACTURING LIMITED
To: VENTURE LENDING & LEASING IX, INC.; WTI FUND X, INC.
Reel/Frame 073207/0758 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Nov 3, 2020
From: GOETGELUK, JAN; SOZA, RICARDO; BESTER, DUANE; SHUFFIELD, JAMES DOUGLAS
To: VIRTUIX HOLDINGS INC.
Reel/Frame 054253/0966 →
Continuity (8)
Continuation 14663433 · Mar 19, 2015
Continuation In Part 14062625 · Oct 24, 2013
Provisional Application 61955767 · Mar 19, 2014
Provisional Application 61981149 · Apr 17, 2014
Provisional Application 62004550 · May 29, 2014
Provisional Application 62099426 · Jan 2, 2015
Provisional Application 62127261 · Mar 2, 2015
Related Publication 20190282900A1 · Sep 19, 2019