diff options
| author | Anton Novoselov <[email protected]> | 2017-08-01 12:53:38 +0300 |
|---|---|---|
| committer | Anton Novoselov <[email protected]> | 2017-08-01 12:53:38 +0300 |
| commit | 236f03c0b9a4982328ed1201978f7f69d192d9b2 (patch) | |
| tree | e486f2fa39dba203563895541e92c60ed3e25759 /sdk/extensions/serialization/source/NvBlastExtPxSerialization.capn | |
| parent | Added screens to welcome page (diff) | |
| download | blast-236f03c0b9a4982328ed1201978f7f69d192d9b2.tar.xz blast-236f03c0b9a4982328ed1201978f7f69d192d9b2.zip | |
Blast 1.1 release (windows / linux)
see docs/release_notes.txt for details
Diffstat (limited to 'sdk/extensions/serialization/source/NvBlastExtPxSerialization.capn')
| -rw-r--r-- | sdk/extensions/serialization/source/NvBlastExtPxSerialization.capn | 99 |
1 files changed, 99 insertions, 0 deletions
diff --git a/sdk/extensions/serialization/source/NvBlastExtPxSerialization.capn b/sdk/extensions/serialization/source/NvBlastExtPxSerialization.capn new file mode 100644 index 0000000..802898f --- /dev/null +++ b/sdk/extensions/serialization/source/NvBlastExtPxSerialization.capn @@ -0,0 +1,99 @@ +# This code contains NVIDIA Confidential Information and is disclosed to you +# under a form of NVIDIA software license agreement provided separately to you. +# +# Notice +# NVIDIA Corporation and its licensors retain all intellectual property and +# proprietary rights in and to this software and related documentation and +# any modifications thereto. Any use, reproduction, disclosure, or +# distribution of this software and related documentation without an express +# license agreement from NVIDIA Corporation is strictly prohibited. +# +# ALL NVIDIA DESIGN SPECIFICATIONS, CODE ARE PROVIDED "AS IS.". NVIDIA MAKES +# NO WARRANTIES, EXPRESSED, IMPLIED, STATUTORY, OR OTHERWISE WITH RESPECT TO +# THE MATERIALS, AND EXPRESSLY DISCLAIMS ALL IMPLIED WARRANTIES OF NONINFRINGEMENT, +# MERCHANTABILITY, AND FITNESS FOR A PARTICULAR PURPOSE. +# +# Information and code furnished is believed to be accurate and reliable. +# However, NVIDIA Corporation assumes no responsibility for the consequences of use of such +# information or for any infringement of patents or other rights of third parties that may +# result from its use. No license is granted by implication or otherwise under any patent +# or patent rights of NVIDIA Corporation. Details are subject to change without notice. +# This code supersedes and replaces all information previously supplied. +# NVIDIA Corporation products are not authorized for use as critical +# components in life support devices or systems without express written approval of +# NVIDIA Corporation. +# +# Copyright (c) 2017 NVIDIA Corporation. All rights reserved. + + +@0xf4df9a42d5842b01; + +using Cxx = import "/capnp/c++.capnp"; + +using TK = import "NvBlastExtTkSerialization.capn"; + +$Cxx.namespace("Nv::Blast::Serialization"); + +struct ExtPxAsset +{ + asset @0 :TK.TkAsset; + chunks @1 :List(ExtPxChunk); + subchunks @2 :List(ExtPxSubchunk); + uniformInitialBondHealth @3 :Float32; + bondHealths @4 :List(Float32); + uniformInitialLowerSupportChunkHealth @5 :Float32; + supportChunkHealths @6 :List(Float32); +} + +struct ExtPxChunk +{ + firstSubchunkIndex @0 :UInt32; + subchunkCount @1 :UInt32; + isStatic @2 :Bool; +} + +struct ExtPxSubchunk +{ + transform @0 :PxTransform; + geometry @1 :PxConvexMeshGeometry; +} + +struct PxConvexMeshGeometry +{ + scale @0 :PxMeshScale; + convexMesh @1 :Data; + meshFlags @2 :UInt8; + + enum Type + { + eSPHERE @0; + ePLANE @1; + eCAPSULE @2; + eBOX @3; + eCONVEXMESH @4; + eTRIANGLEMESH @5; + eHEIGHTFIELD @6; + } + + type @3 :Type; +} + +struct PxQuat +{ + x @0 :Float32; + y @1 :Float32; + z @2 :Float32; + w @3 :Float32; +} + +struct PxMeshScale +{ + scale @0 :TK.PxVec3; + rotation @1 :PxQuat; +} + +struct PxTransform +{ + q @0 :PxQuat; + p @1 :TK.PxVec3; +} |