Skip to content
This repository has been archived by the owner on Nov 26, 2024. It is now read-only.

Commit

Permalink
Initial Commit
Browse files Browse the repository at this point in the history
["Skinning with Dual Quaternions" of "NVIDIA Direct3D SDK 10 Code Samples"](https://developer.download.nvidia.com/SDK/10.5/direct3d/samples.html#QuaternionSkinning)
  • Loading branch information
HanetakaChou committed Nov 26, 2024
0 parents commit bb1a761
Show file tree
Hide file tree
Showing 37 changed files with 53,354 additions and 0 deletions.
23 changes: 23 additions & 0 deletions .github/workflows/build-windows.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,23 @@
name: build windows

on:
push:
branches: [master]
pull_request:
branches: [master]

jobs:
build_windows:
runs-on: windows-latest
strategy:
matrix:
configuration: [Debug, Release]
platform: [x86, x64]
steps:
- uses: actions/checkout@v3
with:
submodules: 'true'
- uses: microsoft/[email protected]
- shell: cmd
run: |
msbuild ./Demo.sln /p:Configuration=${{matrix.configuration}} /p:Platform=${{matrix.platform}}
4 changes: 4 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
@@ -0,0 +1,4 @@
/.vs
/bin
/obj
/dxbc
7 changes: 7 additions & 0 deletions .gitmodules
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
[submodule "DXUT"]
path = DXUT
url = [email protected]:microsoft/DXUT.git
[submodule "DLB"]
path = DLB
url = [email protected]:HanetakaChou/Dual-Quaternion-Linear-Blending.git
branch = release
1 change: 1 addition & 0 deletions DLB
Submodule DLB added at 524a79
1 change: 1 addition & 0 deletions DXUT
Submodule DXUT added at 49fe5d
31 changes: 31 additions & 0 deletions Demo.sln
Original file line number Diff line number Diff line change
@@ -0,0 +1,31 @@

Microsoft Visual Studio Solution File, Format Version 12.00
# Visual Studio Version 16
VisualStudioVersion = 16.0.31624.102
MinimumVisualStudioVersion = 10.0.40219.1
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "Demo", "Demo.vcxproj", "{9E83B7CB-80B8-42FC-96CE-A5447BC3F624}"
EndProject
Global
GlobalSection(SolutionConfigurationPlatforms) = preSolution
Debug|x64 = Debug|x64
Debug|x86 = Debug|x86
Release|x64 = Release|x64
Release|x86 = Release|x86
EndGlobalSection
GlobalSection(ProjectConfigurationPlatforms) = postSolution
{9E83B7CB-80B8-42FC-96CE-A5447BC3F624}.Debug|x64.ActiveCfg = Debug|x64
{9E83B7CB-80B8-42FC-96CE-A5447BC3F624}.Debug|x64.Build.0 = Debug|x64
{9E83B7CB-80B8-42FC-96CE-A5447BC3F624}.Debug|x86.ActiveCfg = Debug|Win32
{9E83B7CB-80B8-42FC-96CE-A5447BC3F624}.Debug|x86.Build.0 = Debug|Win32
{9E83B7CB-80B8-42FC-96CE-A5447BC3F624}.Release|x64.ActiveCfg = Release|x64
{9E83B7CB-80B8-42FC-96CE-A5447BC3F624}.Release|x64.Build.0 = Release|x64
{9E83B7CB-80B8-42FC-96CE-A5447BC3F624}.Release|x86.ActiveCfg = Release|Win32
{9E83B7CB-80B8-42FC-96CE-A5447BC3F624}.Release|x86.Build.0 = Release|Win32
EndGlobalSection
GlobalSection(SolutionProperties) = preSolution
HideSolutionNode = FALSE
EndGlobalSection
GlobalSection(ExtensibilityGlobals) = postSolution
SolutionGuid = {60CB3976-5245-44ED-8E8C-72F5511A5041}
EndGlobalSection
EndGlobal
317 changes: 317 additions & 0 deletions Demo.vcxproj

Large diffs are not rendered by default.

153 changes: 153 additions & 0 deletions Demo.vcxproj.filters
Original file line number Diff line number Diff line change
@@ -0,0 +1,153 @@
<?xml version="1.0" encoding="utf-8"?>
<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<ItemGroup>
<Filter Include="shaders">
<UniqueIdentifier>{6c4acdda-e600-462b-bd50-542c8a94cb34}</UniqueIdentifier>
</Filter>
<Filter Include="code">
<UniqueIdentifier>{73015ce9-35e2-462f-b27d-20deeac7e32f}</UniqueIdentifier>
</Filter>
<Filter Include="DXUT">
<UniqueIdentifier>{9b6e6cd8-c5ee-4f27-b26e-bdccf2d3a6ff}</UniqueIdentifier>
</Filter>
<Filter Include="DXUT\Core">
<UniqueIdentifier>{98554015-aa60-4650-a00c-c714c0d524de}</UniqueIdentifier>
</Filter>
<Filter Include="DXUT\Optional">
<UniqueIdentifier>{e91041b2-cb91-42bb-9887-e6f2c75077c5}</UniqueIdentifier>
</Filter>
<Filter Include="DXUT\Media">
<UniqueIdentifier>{9b27f363-a14c-4666-9393-2e1f77d59e4e}</UniqueIdentifier>
</Filter>
<Filter Include="DXUT\Media\UI">
<UniqueIdentifier>{91b057bd-5a4b-48e4-aed5-fb8b4c9301f2}</UniqueIdentifier>
</Filter>
</ItemGroup>
<ItemGroup>
<ClCompile Include="code\main.cpp">
<Filter>code</Filter>
</ClCompile>
<ClCompile Include="DXUT\Core\DDSTextureLoader.cpp">
<Filter>DXUT\Core</Filter>
</ClCompile>
<ClCompile Include="DXUT\Core\dxerr.cpp">
<Filter>DXUT\Core</Filter>
</ClCompile>
<ClCompile Include="DXUT\Core\DXUT.cpp">
<Filter>DXUT\Core</Filter>
</ClCompile>
<ClCompile Include="DXUT\Core\DXUTDevice11.cpp">
<Filter>DXUT\Core</Filter>
</ClCompile>
<ClCompile Include="DXUT\Core\DXUTmisc.cpp">
<Filter>DXUT\Core</Filter>
</ClCompile>
<ClCompile Include="DXUT\Core\ScreenGrab.cpp">
<Filter>DXUT\Core</Filter>
</ClCompile>
<ClCompile Include="DXUT\Core\WICTextureLoader.cpp">
<Filter>DXUT\Core</Filter>
</ClCompile>
<ClCompile Include="DXUT\Optional\DXUTsettingsdlg.cpp">
<Filter>DXUT\Optional</Filter>
</ClCompile>
<ClCompile Include="DXUT\Optional\SDKmisc.cpp">
<Filter>DXUT\Optional</Filter>
</ClCompile>
<ClCompile Include="DXUT\Optional\DXUTcamera.cpp">
<Filter>DXUT\Optional</Filter>
</ClCompile>
<ClCompile Include="DXUT\Optional\DXUTgui.cpp">
<Filter>DXUT\Optional</Filter>
</ClCompile>
<ClCompile Include="DXUT\Optional\DXUTres.cpp">
<Filter>DXUT\Optional</Filter>
</ClCompile>
<ClCompile Include="code\AnimatedCharacter.cpp">
<Filter>code</Filter>
</ClCompile>
<ClCompile Include="code\AnimatedCharacterInstance.cpp">
<Filter>code</Filter>
</ClCompile>
<ClCompile Include="code\CharacterAnimation.cpp">
<Filter>code</Filter>
</ClCompile>
<ClCompile Include="code\asset_animation.cpp">
<Filter>code</Filter>
</ClCompile>
<ClCompile Include="code\asset_mesh.cpp">
<Filter>code</Filter>
</ClCompile>
</ItemGroup>
<ItemGroup>
<ClInclude Include="DXUT\Core\DDSTextureLoader.h">
<Filter>DXUT\Core</Filter>
</ClInclude>
<ClInclude Include="DXUT\Core\dxerr.h">
<Filter>DXUT\Core</Filter>
</ClInclude>
<ClInclude Include="DXUT\Core\DXUT.h">
<Filter>DXUT\Core</Filter>
</ClInclude>
<ClInclude Include="DXUT\Core\DXUTDevice11.h">
<Filter>DXUT\Core</Filter>
</ClInclude>
<ClInclude Include="DXUT\Core\DXUTmisc.h">
<Filter>DXUT\Core</Filter>
</ClInclude>
<ClInclude Include="DXUT\Core\ScreenGrab.h">
<Filter>DXUT\Core</Filter>
</ClInclude>
<ClInclude Include="DXUT\Core\WICTextureLoader.h">
<Filter>DXUT\Core</Filter>
</ClInclude>
<ClInclude Include="DXUT\Optional\DXUTsettingsdlg.h">
<Filter>DXUT\Optional</Filter>
</ClInclude>
<ClInclude Include="DXUT\Optional\SDKmisc.h">
<Filter>DXUT\Optional</Filter>
</ClInclude>
<ClInclude Include="DXUT\Optional\DXUTcamera.h">
<Filter>DXUT\Optional</Filter>
</ClInclude>
<ClInclude Include="DXUT\Optional\DXUTgui.h">
<Filter>DXUT\Optional</Filter>
</ClInclude>
<ClInclude Include="DXUT\Optional\DXUTres.h">
<Filter>DXUT\Optional</Filter>
</ClInclude>
<ClInclude Include="code\CharacterAnimation.h">
<Filter>code</Filter>
</ClInclude>
<ClInclude Include="code\AnimatedCharacter.h">
<Filter>code</Filter>
</ClInclude>
<ClInclude Include="code\AnimatedCharacterInstance.h">
<Filter>code</Filter>
</ClInclude>
</ItemGroup>
<ItemGroup>
<FxCompile Include="shaders\CharacterPS.hlsl">
<Filter>shaders</Filter>
</FxCompile>
<FxCompile Include="shaders\CharacterAnimatedVS.hlsl">
<Filter>shaders</Filter>
</FxCompile>
<FxCompile Include="shaders\CharacterAnimatedVS_fast.hlsl">
<Filter>shaders</Filter>
</FxCompile>
</ItemGroup>
<ItemGroup>
<CopyFileToFolders Include="DXUT\Media\UI\dxutcontrols.dds">
<Filter>DXUT\Media\UI</Filter>
</CopyFileToFolders>
<CopyFileToFolders Include="DXUT\Media\UI\Font.dds">
<Filter>DXUT\Media\UI</Filter>
</CopyFileToFolders>
</ItemGroup>
<ItemGroup>
<None Include="shaders\Character.hlsli">
<Filter>shaders</Filter>
</None>
</ItemGroup>
</Project>
4 changes: 4 additions & 0 deletions Demo.vcxproj.user
Original file line number Diff line number Diff line change
@@ -0,0 +1,4 @@
<?xml version="1.0" encoding="utf-8"?>
<Project ToolsVersion="Current" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<PropertyGroup />
</Project>
Binary file added Media/Dwarves/BODY03_color.DDS
Binary file not shown.
Binary file added Media/Dwarves/BODY03_normal.DDS
Binary file not shown.
Binary file added Media/Dwarves/HEAD03_color.DDS
Binary file not shown.
Binary file added Media/Dwarves/HEAD03_normal.DDS
Binary file not shown.
Binary file added Media/Dwarves/LEG03_color.DDS
Binary file not shown.
Binary file added Media/Dwarves/LEG03_normal.DDS
Binary file not shown.
Binary file added Media/Dwarves/SHIELD02_color.DDS
Binary file not shown.
Binary file added Media/Dwarves/SHIELD02_normal.DDS
Binary file not shown.
Binary file added Media/Dwarves/SHIELD03_color.DDS
Binary file not shown.
Binary file added Media/Dwarves/SHIELD03_normal.DDS
Binary file not shown.
2 changes: 2 additions & 0 deletions Media/UI/.gitignore
Original file line number Diff line number Diff line change
@@ -0,0 +1,2 @@
/dxutcontrols.dds
/Font.dds
25 changes: 25 additions & 0 deletions NVIDIA-License.txt
Original file line number Diff line number Diff line change
@@ -0,0 +1,25 @@
Copyright 2008 NVIDIA Corporation

BY DOWNLOADING THE SOFTWARE AND OTHER AVAILABLE MATERIALS, YOU ("DEVELOPER") AGREE TO BE BOUND BY THE FOLLOWING TERMS AND CONDITIONS

The materials available for download to Developers may include software in both sample source ("Source Code") and object code ("Object Code") versions, documentation ("Documentation"), certain art work ("Art Assets") and other materials (collectively, these materials referred to herein as "Materials"). Except as expressly indicated herein, all terms and conditions of this Agreement apply to all of the Materials.

Except as expressly set forth herein, NVIDIA owns all of the Materials and makes them available to Developer only under the terms and conditions set forth in this Agreement.

License: Subject to the terms of this Agreement, NVIDIA hereby grants to Developer a royalty-free, non-exclusive license to possess and to use the Materials. The following terms apply to the specified type of Material:

Source Code: Developer shall have the right to modify and create derivative works with the Source Code. Developer shall own any derivative works ("Derivatives") it creates to the Source Code, provided that Developer uses the Materials in accordance with the terms of this Agreement. Developer may distribute the Derivatives, provided that all NVIDIA copyright notices and trademarks are used properly and the Derivatives include the following statement: "This software contains source code provided by NVIDIA Corporation."

Object Code: Developer agrees not to disassemble, decompile or reverse engineer the Object Code versions of any of the Materials. Developer acknowledges that certain of the Materials provided in Object Code version may contain third party components that may be subject to restrictions, and expressly agrees not to attempt to modify or distribute such Materials without first receiving consent from NVIDIA.

Art Assets: Developer shall have the right to modify and create Derivatives of the Art Assets, but may not distribute any of the Art Assets or Derivatives created therefrom without NVIDIA�s prior written consent.

Government End Users: If you are acquiring the Software on behalf of any unit or agency of the United States Government, the following provisions apply. The Government agrees the Software and documentation were developed at private expense and are provided with �RESTRICTED RIGHTS�. Use, duplication, or disclosure by the Government is subject to restrictions as set forth in DFARS 227.7202-1(a) and 227.7202-3(a) (1995), DFARS 252.227-7013(c)(1)(ii) (Oct 1988), FAR 12.212(a)(1995), FAR 52.227-19, (June 1987) or FAR 52.227-14(ALT III) (June 1987),as amended from time to time. In the event that this License, or any part thereof, is deemed inconsistent with the minimum rights identified in the Restricted Rights provisions, the minimum rights shall prevail.
No Other License. No rights or licenses are granted by NVIDIA under this License, expressly or by implication, with respect to any proprietary information or patent, copyright, trade secret or other intellectual property right owned or controlled by NVIDIA, except as expressly provided in this License.
Term: This License is effective until terminated. NVIDIA may terminate this Agreement (and with it, all of Developer�s right to the Materials) immediately upon written notice (which may include email) to Developer, with or without cause.

Support: NVIDIA has no obligation to support or to continue providing or updating any of the Materials.

No Warranty: THE SOFTWARE AND ANY OTHER MATERIALS PROVIDED BY NVIDIA TO DEVELOPER HEREUNDER ARE PROVIDED "AS IS." NVIDIA DISCLAIMS ALL WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, INCLUDING, WITHOUT LIMITATION, THE IMPLIED WARRANTIES OF TITLE, MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.

LIMITATION OF LIABILITY: NVIDIA SHALL NOT BE LIABLE TO DEVELOPER, DEVELOPER�S CUSTOMERS, OR ANY OTHER PERSON OR ENTITY CLAIMING THROUGH OR UNDER DEVELOPER FOR ANY LOSS OF PROFITS, INCOME, SAVINGS, OR ANY OTHER CONSEQUENTIAL, INCIDENTAL, SPECIAL, PUNITIVE, DIRECT OR INDIRECT DAMAGES (WHETHER IN AN ACTION IN CONTRACT, TORT OR BASED ON A WARRANTY), EVEN IF NVIDIA HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES. THESE LIMITATIONS SHALL APPLY NOTWITHSTANDING ANY FAILURE OF THE ESSENTIAL PURPOSE OF ANY LIMITED REMEDY. IN NO EVENT SHALL NVIDIA�S AGGREGATE LIABILITY TO DEVELOPER OR ANY OTHER PERSON OR ENTITY CLAIMING THROUGH OR UNDER DEVELOPER EXCEED THE AMOUNT OF MONEY ACTUALLY PAID BY DEVELOPER TO NVIDIA FOR THE SOFTWARE OR ANY OTHER MATERIALS.
Binary file added NVIDIA-QuaternionSkinning.pdf
Binary file not shown.
5 changes: 5 additions & 0 deletions README.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
## DLB (Dual Quaternion Linear Blending)

[![build windows](https://github.com/HanetakaChou/Dual-Quaternion-Linear-Blending/actions/workflows/build-windows.yml/badge.svg)](https://github.com/HanetakaChou/Dual-Quaternion-Linear-Blending/actions/workflows/build-windows.yml)

![](README.png)
Binary file added README.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading

0 comments on commit bb1a761

Please sign in to comment.