Sam Haves
c439628f82
When parsing USD, infer gravity from stage metadata if UsdPhysicsScene missing or undefined.
...
PiperOrigin-RevId: 813705210
Change-Id: I13741af6dc87ecd9efb83219e978f5f06c72d021
2025-10-01 05:19:31 -07:00
Haroon Qureshi
e1c7e19780
Add rendering flags to the studio UI.
...
PiperOrigin-RevId: 812649785
Change-Id: I47c6f974b7336bdd63c088ccfd06b5835e77ebff
2025-09-28 23:58:33 -07:00
Haroon Qureshi
bb0878417e
Automated g4 rollback of changelist 810355812.
...
*** Reason for rollback ***
mjv_makeScene does not call mjv_defaultScene directly. Instead, it calls mjv_freeScene which calls mjv_defaultScene. However, mjv_freeScene attempts to free pointers if they are not NULL and if you don't call mjv_defaultScene then you'll have garbage data in those pointers.
*** Original change description ***
Remove redundant mjv_defaultScene call since its called by mjv_makeScene
***
PiperOrigin-RevId: 810442645
Change-Id: Ica50493d6769a0afb086f9ead99d731cdf0d75d9
2025-09-23 08:05:40 -07:00
Matija Kecman
bf918ccf40
Remove redundant mjv_defaultScene call since its called by mjv_makeScene
...
PiperOrigin-RevId: 810355812
Change-Id: I2bc112e24c3adaca616604ebc5c1e3e3c494eb59
2025-09-23 02:35:05 -07:00
Haroon Qureshi
6eea3d8ec0
Initial implementation of toolbox-based "Studio" app.
...
PiperOrigin-RevId: 809966748
Change-Id: Ic6333259ca1d112a2e42d47ccc44326bfcea3bdd
2025-09-22 05:02:31 -07:00
Kyle Bayes
eb96dd556c
Reduce ccd_iterations from 50 to 35.
...
PiperOrigin-RevId: 808610578
Change-Id: I8755f9ba2902bf0805b7ded07ee6e048e404a31f
2025-09-18 09:16:52 -07:00
Matija Kecman
f9f3dd3c1d
Fix ImGui input processing
...
PiperOrigin-RevId: 808555760
Change-Id: Ie443143d9c058058b99786e44f27715b05c9f8ed
2025-09-18 06:42:16 -07:00
Haroon Qureshi
6f5a7576f9
Move simlib into experimental folder and rename it toolbox.
...
Also:
- update the namespace to `toolbox` (instead of `filament`)
- Add copyright notices to all files
PiperOrigin-RevId: 808474353
Change-Id: Id1fe86c5d183c8e91bec8509b6c0830b5fe84c1c
2025-09-18 02:15:23 -07:00
Yuval Tassa
b092563cab
Remove mjDSBL_PASSIVE, split it into mjDSBL_SPRING and mjDSBL_DAMPING.
...
PiperOrigin-RevId: 800870384
Change-Id: I273e0ceec090901e2620febb67e57914928e94bb
2025-08-29 06:06:28 -07:00
Yuval Tassa
643dc5bf4f
Update USD schema formatting
...
PiperOrigin-RevId: 800018484
Change-Id: I7677cd099415af1271c7475d80a660653199b984
2025-08-27 07:02:50 -07:00
Yuval Tassa
ec94bb49aa
Make constraint island discovery on by default.
...
Also fix latent bug in mjData serialization.
PiperOrigin-RevId: 799505349
Change-Id: I299e7cc8133fa2ec0b339a7ff3d02543e06778b1
2025-08-26 04:27:24 -07:00
Sam Haves
4bad134ba2
Add proper handling of MJCF asset/mesh/texturedir compiler attributes to USD plugin.
...
This allows the MJCF SdfFileFormat plugin to load MJCF files that specify assetdir, meshdir, or texturedir attributes. This is specifically important for resolver implementations that fetch assets into a local cache.
PiperOrigin-RevId: 796509754
Change-Id: Ib2b0c9cf9d6a3351ceea49d90c882edf94d0b880
2025-08-18 11:38:32 -07:00
Sam Haves
e74cee652f
Add README to mjcPhysics.
...
PiperOrigin-RevId: 791183563
Change-Id: I4383dcab12128a745e435ac7f2cea52cccc4ce60
2025-08-05 06:18:37 -07:00
Sam Haves
4c288c19ac
Remove physics schema authoring toggle from MJCF SdfFileFormat plugin.
...
PiperOrigin-RevId: 789321573
Change-Id: Ib29bb426f8598a58f7b34c048b154fa8ada589ef
2025-07-31 07:07:18 -07:00
Sam Haves
b5368a3385
Add displayColor authoring to site geometry when converting MJCF to USD.
...
PiperOrigin-RevId: 789311878
Change-Id: I70027cd5d8d02f4ee26043f3b9fb03311e38984b
2025-07-31 06:28:42 -07:00
Sam Haves
a04e0385e4
Add USD content type support in MJCF.
...
PiperOrigin-RevId: 788075561
Change-Id: If37cc254cab0411454de7663e0b3ff9f2b263281
2025-07-28 10:53:49 -07:00
Sam Haves
541c56b46f
Create mjcPhysics ImageableAPI for visual, non physical visual entities.
...
PiperOrigin-RevId: 786366034
Change-Id: Ifb72d2daf8f5963bb7007dda1685da94b456ff41
2025-07-23 11:48:17 -07:00
Sam Haves
7da32d186f
Add basic visual material parsing support to USD interop.
...
For this first iteration we only support simple UsdPreviewSurface spec node graphs.
PiperOrigin-RevId: 786309455
Change-Id: I2e5501a65b22aca6da570bc94394514c67bd100a
2025-07-23 09:21:56 -07:00
Sam Haves
8383bd439c
Add support for parsing 'st' primvar from USD.
...
PiperOrigin-RevId: 786277487
Change-Id: Id99e6bf6a656b623950c363597da3930ee4c00e3
2025-07-23 07:47:50 -07:00
Sam Haves
c2820941aa
Convert UsdPhysicsRevoluteJoint from degres to radians if compiler option is set.
...
PiperOrigin-RevId: 784574716
Change-Id: I58f65816edb782fcb41bbc721f7bed5a27741639
2025-07-18 07:18:17 -07:00
Sam Haves
46b713ef2d
Remove pedantic designated initializers in USD parsing.
...
PiperOrigin-RevId: 784544836
Change-Id: Ie36136b2a0b8105ccb4a4679883120638ec80699
2025-07-18 05:10:12 -07:00
Sam Haves
e92ce30732
Account for scale authored on UsdMesh prims.
...
PiperOrigin-RevId: 784231423
Change-Id: I82b363c6c40940982ebeb0b1949e0e1e8f92199d
2025-07-17 10:29:31 -07:00
Sam Haves
c597434fc9
When UsdCollisionAPI is applied but collisionEnabled is false, treat it as a visual gprim.
...
PiperOrigin-RevId: 784219782
Change-Id: If87e1cd7e1cc10b27a3d432585466e3aece71d26
2025-07-17 09:59:37 -07:00
Sam Haves
f5df466ee5
Add support for visual gprims to USD parsing.
...
PiperOrigin-RevId: 784197335
Change-Id: I8eb155b7942209f372487f8268ad76310cf510ac
2025-07-17 08:51:50 -07:00
Sam Haves
2e13c64308
Simplify parsing from USD stage to kinematic tree for mjSpec population.
...
Summary of changes:
- Move stage parsing from usd_to_mjspec to kinematic_tree
- A Node now has lists of paths for prims that we support parsing.
- When parsing the stage, we create a list of all the Nodes that we will place in our tree.
- Removed the need for expensive SdfPath maps and sorting of bodies in favor of indexed integer arrays.
- Simplifies usd_to_mjspec parsing as we can process each node and it's owned prims one at a time.
PiperOrigin-RevId: 784187799
Change-Id: I4907cfa1137014af21c45b10fa29ac53a49b6dac
2025-07-17 08:20:10 -07:00
Sam Haves
3cc8d7f58a
Fix typo in mjcPhysics MjcMaterialAPI
...
PiperOrigin-RevId: 783750052
Change-Id: Ib829ae7ead7a33572e94ee0fe221da778b623f10
2025-07-16 07:31:09 -07:00
Sam Haves
6144a508b5
In Mujoco USD interop, only consider dynamic friction when writing to and parsing from USD.
...
PiperOrigin-RevId: 783741987
Change-Id: I23c47a6e95c160c5c7d5c513e268c79e4236e2e4
2025-07-16 07:00:18 -07:00
Sam Haves
b99d9e8f12
Fix inherit range pulling from act early attribute when parsing USD to MjSpec.
...
PiperOrigin-RevId: 783735573
Change-Id: I988f16cd16e47caa84a30009c36a932ec3672429
2025-07-16 06:35:10 -07:00
Sam Haves
ac0701d582
Add mujoco compiler settings to MjcSceneAPI in mjcPhysics.
...
PiperOrigin-RevId: 783729333
Change-Id: Ic1c3e4fb47a901de4eebdc2e987d276f4202d9ed
2025-07-16 06:09:36 -07:00
Sam Haves
cdf5bcb693
Add inheritrange attribute to mjcPhysics MjcActuator
...
PiperOrigin-RevId: 783363012
Change-Id: I7d0476aae70c3acc3ed4808a8741b7eb12948dba
2025-07-15 09:30:16 -07:00
Sam Haves
e441868dad
Add missing attributes to MjcCollisionAPI USD schema.
...
PiperOrigin-RevId: 783006362
Change-Id: I02d51190d62bb9460863025cd16360427afc70c4
2025-07-14 12:47:24 -07:00
Sam Haves
92bcbeb5d3
Add support for UsdPhysicsMaterialAPI and create MjcMaterialAPI for missing attributes.
...
PiperOrigin-RevId: 782942169
Change-Id: I344b5e47d1d63c9d4e50173cb6a96d0af177ec9e
2025-07-14 09:53:13 -07:00
Sam Haves
11e695b4c2
Rename MjcTransmission to MjcActuator in mjcPhysics schema.
...
PiperOrigin-RevId: 782352356
Change-Id: I4b74e3131b0fed925c506742c22038231f848909
2025-07-12 09:39:01 -07:00
Sam Haves
3473e4e451
Add group support to mjcPhysics equivalents for sites, geoms, actuators, and joints.
...
PiperOrigin-RevId: 781945497
Change-Id: I5c409f05e6bae33c181a51c273f260daea6004fc
2025-07-11 05:37:41 -07:00
Robin Alazard
723960a1f3
Fix plane size
...
Mujoco uses half-sizes so we must divide USD sizes by 2.
Also added a test for geom primitive sizes.
PiperOrigin-RevId: 781595650
Change-Id: If8a84dd942905c367590eafffac61cc23b1c407d
2025-07-10 10:45:43 -07:00
Robin Alazard
1f8f3a5004
Add capsule axis rotation for USD->MJ.
...
PiperOrigin-RevId: 781546484
Change-Id: Ie6613de8faac406664ca22cb246fe7db2a728317
2025-07-10 08:32:07 -07:00
Robin Alazard
1bb6391d9c
Replace SetRotateInto with pxr::GfRotation(from, to) constructor directly
...
Also remove duplicate line with no effect
PiperOrigin-RevId: 781540954
Change-Id: I1e161c2ed0b6e3209697c9551ad30e3371e44865
2025-07-10 08:14:32 -07:00
Sam Haves
fbea72d767
Remove MjcActuatorAPI in favor of typed MjcTransmission.
...
PiperOrigin-RevId: 781498554
Change-Id: Ib6ce5038645f6ca08638a9d316b0347dc121bc62
2025-07-10 05:58:58 -07:00
Sam Haves
7e57a6bc30
Add missing actuatorgroupdisable default to mjcPhysics schema.
...
PiperOrigin-RevId: 781487140
Change-Id: I7b0ff3a015e0c6b229e5409455a648f6d2399617
2025-07-10 05:15:27 -07:00
Sam Haves
e7212d86bc
Add maxhullvert attribute to mjcPhysics MeshCollisionAPI.
...
PiperOrigin-RevId: 781482346
Change-Id: I0d53f9ad99ac842629243b0375907b2f91bd3b61
2025-07-10 04:59:18 -07:00
Sam Haves
270017f9ba
Spurious formatting errors for gravity attr authoring in Mjcf SdfFileFormat plugin.
...
PiperOrigin-RevId: 781175798
Change-Id: Ic3b3a14280c051859db7c38af0e271a1878acdb8
2025-07-09 13:02:19 -07:00
Sam Haves
9d64ed9575
Remove leftover MJ_USD_TARGET_NAME include directories call from USD CMake.
...
PiperOrigin-RevId: 781023625
Change-Id: Id75cb94c0eafc27c47a275d3cf4280020ed0c17a
2025-07-09 06:33:55 -07:00
Sam Haves
14972d2490
Add mj_loadUSD function. Change simulate to use that instead of manual spec compilation.
...
PiperOrigin-RevId: 780608874
Change-Id: I333238c756fe76b371518a7cdf9452b93da3540a
2025-07-08 10:04:08 -07:00
Sam Haves
e507e31922
Fix schema naming in mjcPhysics to avoid collisions.
...
PiperOrigin-RevId: 780537076
Change-Id: I4ea24162ba20d6aae10207491f9aae2250808576
2025-07-08 06:27:30 -07:00
Sam Haves
1742ba510c
Swap out apostrophe for single quote in mjcPhysics actuator lengthRange docs.
...
PiperOrigin-RevId: 780051495
Change-Id: Ib56a012ded364740564b879456a9e0570b5a0d7a
2025-07-07 04:27:49 -07:00
Sam Haves
2c4fed07d2
Add missing source files to mj_usd target.
...
PiperOrigin-RevId: 779244207
Change-Id: I3a913f8add82838a1d7371f84b4f03f271a1897b
2025-07-04 11:46:48 -07:00
Sam Haves
be3c3ef8a9
Add missing gravity attribute authoring to Mjcf SdfFileFormat plugin.
...
PiperOrigin-RevId: 779239797
Change-Id: I039b1089e5b436498d14df384c1aee830fd4b48a
2025-07-04 11:25:49 -07:00
Robin Alazard
e69b6cc5f3
Fix wrong extent authoring for Cube.
...
PiperOrigin-RevId: 779230125
Change-Id: I96c3d5daa7a760cd87a714a14ea74a15faf3d7db
2025-07-04 10:39:32 -07:00
Robin Alazard
21a852504c
Make sure we never apply the ArticulationRoot API more than once.
...
PiperOrigin-RevId: 779185190
Change-Id: If441d0e2ba24191883839977b46864db2b4b8204
2025-07-04 07:36:05 -07:00
Robin Alazard
85ad1eec91
Rework USD scene traversal, ensure DFS order of bodies is respected, remove implicit welding of non-jointed nested bodies
...
PiperOrigin-RevId: 779121640
Change-Id: Ic3281ac10ce51975cd681e9342b2fffd5f24376f
2025-07-04 03:25:49 -07:00