Skip to content

Commit

Permalink
Merge pull request #122 from benaclejames/Quest-Pro
Browse files Browse the repository at this point in the history
Merge quest-pro into main ready for release
  • Loading branch information
benaclejames committed Mar 25, 2023
2 parents 7f82cf8 + 13f6b84 commit 63befcb
Show file tree
Hide file tree
Showing 80 changed files with 4,258 additions and 1,415 deletions.
3 changes: 2 additions & 1 deletion .gitignore
Expand Up @@ -4,4 +4,5 @@ obj/
riderModule.iml
/_ReSharper.Caches/
VRCFaceTracking/ParamLib
VRCFaceTracking/ParamLib/*
VRCFaceTracking/ParamLib/*
/.vs/VRCFaceTracking
416 changes: 416 additions & 0 deletions ALVRTrackingInterface/ALVRTrackingInterface.cs

Large diffs are not rendered by default.

114 changes: 114 additions & 0 deletions ALVRTrackingInterface/ALVRTrackingInterface.csproj
@@ -0,0 +1,114 @@
<?xml version="1.0" encoding="utf-8"?>
<Project ToolsVersion="4.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<Import Project="$(MSBuildExtensionsPath)\$(MSBuildToolsVersion)\Microsoft.Common.props" Condition="Exists('$(MSBuildExtensionsPath)\$(MSBuildToolsVersion)\Microsoft.Common.props')" />
<PropertyGroup>
<Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
<Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>
<ProjectGuid>{E007AB65-CB96-4A59-B187-59162F2D71C1}</ProjectGuid>
<OutputType>Library</OutputType>
<AppDesignerFolder>Properties</AppDesignerFolder>
<RootNamespace>ALVRTrackingInterface</RootNamespace>
<AssemblyName>ALVRTrackingInterface</AssemblyName>
<TargetFrameworkVersion>v4.8</TargetFrameworkVersion>
<FileAlignment>512</FileAlignment>
<TargetFrameworkProfile />
</PropertyGroup>
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">
<PlatformTarget>AnyCPU</PlatformTarget>
<DebugSymbols>true</DebugSymbols>
<DebugType>full</DebugType>
<Optimize>false</Optimize>
<OutputPath>bin\Debug\</OutputPath>
<DefineConstants>DEBUG;TRACE</DefineConstants>
<ErrorReport>prompt</ErrorReport>
<WarningLevel>4</WarningLevel>
</PropertyGroup>
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">
<PlatformTarget>AnyCPU</PlatformTarget>
<DebugType>pdbonly</DebugType>
<Optimize>true</Optimize>
<OutputPath>bin\Release\</OutputPath>
<DefineConstants>TRACE</DefineConstants>
<ErrorReport>prompt</ErrorReport>
<WarningLevel>4</WarningLevel>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)' == 'Debug|x64'">
<DebugSymbols>true</DebugSymbols>
<OutputPath>bin\x64\Debug\</OutputPath>
<DefineConstants>DEBUG;TRACE</DefineConstants>
<DebugType>full</DebugType>
<PlatformTarget>x64</PlatformTarget>
<LangVersion>7.3</LangVersion>
<ErrorReport>prompt</ErrorReport>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)' == 'Release|x64'">
<OutputPath>bin\x64\Release\</OutputPath>
<DefineConstants>TRACE</DefineConstants>
<Optimize>true</Optimize>
<DebugType>pdbonly</DebugType>
<PlatformTarget>x64</PlatformTarget>
<LangVersion>7.3</LangVersion>
<ErrorReport>prompt</ErrorReport>
</PropertyGroup>
<ItemGroup>
<Reference Include="Microsoft.Bcl.AsyncInterfaces, Version=7.0.0.0, Culture=neutral, PublicKeyToken=cc7b13ffcd2ddd51, processorArchitecture=MSIL">
<HintPath>..\packages\Microsoft.Bcl.AsyncInterfaces.7.0.0\lib\net462\Microsoft.Bcl.AsyncInterfaces.dll</HintPath>
</Reference>
<Reference Include="System" />
<Reference Include="System.Buffers, Version=4.0.3.0, Culture=neutral, PublicKeyToken=cc7b13ffcd2ddd51, processorArchitecture=MSIL">
<HintPath>..\packages\System.Buffers.4.5.1\lib\net461\System.Buffers.dll</HintPath>
</Reference>
<Reference Include="System.Core" />
<Reference Include="System.Data" />
<Reference Include="System.Memory, Version=4.0.1.2, Culture=neutral, PublicKeyToken=cc7b13ffcd2ddd51, processorArchitecture=MSIL">
<HintPath>..\packages\System.Memory.4.5.5\lib\net461\System.Memory.dll</HintPath>
</Reference>
<Reference Include="System.Numerics" />
<Reference Include="System.Numerics.Vectors, Version=4.1.4.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a, processorArchitecture=MSIL">
<HintPath>..\packages\System.Numerics.Vectors.4.5.0\lib\net46\System.Numerics.Vectors.dll</HintPath>
</Reference>
<Reference Include="System.Runtime.CompilerServices.Unsafe, Version=6.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a, processorArchitecture=MSIL">
<HintPath>..\packages\System.Runtime.CompilerServices.Unsafe.6.0.0\lib\net461\System.Runtime.CompilerServices.Unsafe.dll</HintPath>
</Reference>
<Reference Include="System.Text.Encodings.Web, Version=7.0.0.0, Culture=neutral, PublicKeyToken=cc7b13ffcd2ddd51, processorArchitecture=MSIL">
<HintPath>..\packages\System.Text.Encodings.Web.7.0.0\lib\net462\System.Text.Encodings.Web.dll</HintPath>
</Reference>
<Reference Include="System.Text.Json, Version=7.0.0.1, Culture=neutral, PublicKeyToken=cc7b13ffcd2ddd51, processorArchitecture=MSIL">
<HintPath>..\packages\System.Text.Json.7.0.1\lib\net462\System.Text.Json.dll</HintPath>
</Reference>
<Reference Include="System.Threading.Tasks.Extensions, Version=4.2.0.1, Culture=neutral, PublicKeyToken=cc7b13ffcd2ddd51, processorArchitecture=MSIL">
<HintPath>..\packages\System.Threading.Tasks.Extensions.4.5.4\lib\net461\System.Threading.Tasks.Extensions.dll</HintPath>
</Reference>
<Reference Include="System.ValueTuple, Version=4.0.3.0, Culture=neutral, PublicKeyToken=cc7b13ffcd2ddd51, processorArchitecture=MSIL">
<HintPath>..\packages\System.ValueTuple.4.5.0\lib\net47\System.ValueTuple.dll</HintPath>
</Reference>
<Reference Include="System.Xml" />
</ItemGroup>
<ItemGroup>
<Compile Include="ALVRTrackingInterface.cs" />
<Compile Include="Properties\AssemblyInfo.cs" />
<Compile Include="FBData.cs" />
<Compile Include="FBExpression.cs" />
</ItemGroup>
<ItemGroup>
<ProjectReference Include="..\VRCFaceTracking\VRCFaceTracking.csproj">
<Project>{0767c09e-d536-464b-b0a1-46d5bfa19e98}</Project>
<Name>VRCFaceTracking</Name>
</ProjectReference>
</ItemGroup>
<ItemGroup>
<None Include="app.config" />
<None Include="packages.config" />
</ItemGroup>
<Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />
<PropertyGroup>
<PostBuildEvent>xcopy /y "$(TargetPath)" "%25appdata%25\VRCFaceTracking\CustomLibs\"</PostBuildEvent>
</PropertyGroup>
<!-- To modify your build process, add your task inside one of the targets below and uncomment it.
Other similar extension points exist, see Microsoft.Common.targets.
<Target Name="BeforeBuild">
</Target>
<Target Name="AfterBuild">
</Target>
-->
</Project>
212 changes: 212 additions & 0 deletions ALVRTrackingInterface/FBData.cs
@@ -0,0 +1,212 @@
using System.Runtime.InteropServices;

namespace DefaultNamespace
{
public class FBData
{
[StructLayout(LayoutKind.Sequential)]
public struct AllData
{
public EyeData eyeData;
public FaceData faceData;

public override string ToString()
{
return "EyeData: " + eyeData.ToString() + " FaceData: " + faceData.ToString();
}
}

[StructLayout(LayoutKind.Sequential)]
public struct EyeData
{
public Eye leftEye;
public Eye rightEye;

public override string ToString()
{
return "LeftEye: " + leftEye.ToString() + " RightData: " + rightEye.ToString();
}
}

[StructLayout(LayoutKind.Sequential)]
public struct Eye
{
public float confidence;
public Vec3 position;
public Quat rotation;

public override string ToString()
{
return "Confidence: " + confidence + ", Position: " + position.ToString() + ", Rotation: " + rotation.ToString();
}
}

[StructLayout(LayoutKind.Sequential)]
public struct Vec3
{
public float x;
public float y;
public float z;

public override string ToString()
{
return $"Vector3: X: {x}, Y: {y}, Z: {z})";
}
}

[StructLayout(LayoutKind.Sequential)]
public struct Quat
{
public float x;
public float y;
public float z;
public float w;

public override string ToString()
{
return $"Quaternion: X: {x}, Y: {y}, Z: {z}, W: {w})";
}
}

[StructLayout(LayoutKind.Sequential)]
public struct FaceData
{
public float FaceRegionConfidenceLower;
public float FaceRegionConfidenceUpper;
public float BrowLowererL;
public float BrowLowererR;
public float CheekPuffL;
public float CheekPuffR;
public float CheekRaiserL;
public float CheekRaiserR;
public float CheekSuckL;
public float CheekSuckR;
public float ChinRaiserB;
public float ChinRaiserT;
public float DimplerL;
public float DimplerR;
public float EyesClosedL;
public float EyesClosedR;
public float EyesLookDownL;
public float EyesLookDownR;
public float EyesLookLeftL;
public float EyesLookLeftR;
public float EyesLookRightL;
public float EyesLookRightR;
public float EyesLookUpL;
public float EyesLookUpR;
public float InnerBrowRaiserL;
public float InnerBrowRaiserR;
public float JawDrop;
public float JawSidewaysLeft;
public float JawSidewaysRight;
public float JawThrust;
public float LidTightenerL;
public float LidTightenerR;
public float LipCornerDepressorL;
public float LipCornerDepressorR;
public float LipCornerPullerL;
public float LipCornerPullerR;
public float LipFunnelerLB;
public float LipFunnelerLT;
public float LipFunnelerRB;
public float LipFunnelerRT;
public float LipPressorL;
public float LipPressorR;
public float LipPuckerL;
public float LipPuckerR;
public float LipStretcherL;
public float LipStretcherR;
public float LipSuckLB;
public float LipSuckLT;
public float LipSuckRB;
public float LipSuckRT;
public float LipTightenerL;
public float LipTightenerR;
public float LipsToward;
public float LowerLipDepressorL;
public float LowerLipDepressorR;
public float MouthLeft;
public float MouthRight;
public float NoseWrinklerL;
public float NoseWrinklerR;
public float OuterBrowRaiserL;
public float OuterBrowRaiserR;
public float UpperLidRaiserL;
public float UpperLidRaiserR;
public float UpperLipRaiserL;
public float UpperLipRaiserR;

public override string ToString()
{
return
"FaceData: " +
"\nFaceRegionConfidenceLower: " + FaceRegionConfidenceLower +
"\nFaceRegionConfidenceUpper: " + FaceRegionConfidenceUpper +
"\nBrowLowererL: " + BrowLowererL +
"\nBrowLowererR: " + BrowLowererR +
"\nCheekPuffL: " + CheekPuffL +
"\nCheekPuffR: " + CheekPuffR +
"\nCheekRaiserL: " + CheekRaiserL +
"\nCheekRaiserR: " + CheekRaiserR +
"\nCheekSuckL: " + CheekSuckL +
"\nCheekSuckR: " + CheekSuckR +
"\nChinRaiserB: " + ChinRaiserB +
"\nChinRaiserT: " + ChinRaiserT +
"\nDimplerL: " + DimplerL +
"\nDimplerR: " + DimplerR +
"\nEyesClosedL: " + EyesClosedL +
"\nEyesClosedR: " + EyesClosedR +
"\nEyesLookDownL: " + EyesLookDownL +
"\nEyesLookDownR: " + EyesLookDownR +
"\nEyesLookLeftL: " + EyesLookLeftL +
"\nEyesLookLeftR: " + EyesLookLeftR +
"\nEyesLookRightL: " + EyesLookRightL +
"\nEyesLookRightR: " + EyesLookRightR +
"\nEyesLookUpL: " + EyesLookUpL +
"\nEyesLookUpR: " + EyesLookUpR +
"\nInnerBrowRaiserL: " + InnerBrowRaiserL +
"\nInnerBrowRaiserR: " + InnerBrowRaiserR +
"\nJawDrop: " + JawDrop +
"\nJawSidewaysLeft: " + JawSidewaysLeft +
"\nJawSidewaysRight: " + JawSidewaysRight +
"\nJawThrust: " + JawThrust +
"\nLidTightenerL: " + LidTightenerL +
"\nLidTightenerR: " + LidTightenerR +
"\nLipCornerDepressorL: " + LipCornerDepressorL +
"\nLipCornerDepressorR: " + LipCornerDepressorR +
"\nLipCornerPullerL: " + LipCornerPullerL +
"\nLipCornerPullerR: " + LipCornerPullerR +
"\nLipFunnelerLB: " + LipFunnelerLB +
"\nLipFunnelerLT: " + LipFunnelerLT +
"\nLipFunnelerRB: " + LipFunnelerRB +
"\nLipFunnelerRT: " + LipFunnelerRT +
"\nLipPressorL: " + LipPressorL +
"\nLipPressorR: " + LipPressorR +
"\nLipPuckerL: " + LipPuckerL +
"\nLipPuckerR: " + LipPuckerR +
"\nLipStretcherL: " + LipStretcherL +
"\nLipStretcherR: " + LipStretcherR +
"\nLipSuckLB: " + LipSuckLB +
"\nLipSuckLT: " + LipSuckLT +
"\nLipSuckRB: " + LipSuckRB +
"\nLipSuckRT: " + LipSuckRT +
"\nLipTightenerL: " + LipTightenerL +
"\nLipTightenerR: " + LipTightenerR +
"\nLipsToward: " + LipsToward +
"\nLowerLipDepressorL: " + LowerLipDepressorL +
"\nLowerLipDepressorR: " + LowerLipDepressorR +
"\nMouthLeft: " + MouthLeft +
"\nMouthRight: " + MouthRight +
"\nNoseWrinklerL: " + NoseWrinklerL +
"\nNoseWrinklerR: " + NoseWrinklerR +
"\nOuterBrowRaiserL: " + OuterBrowRaiserL +
"\nOuterBrowRaiserR: " + OuterBrowRaiserR +
"\nUpperLidRaiserL: " + UpperLidRaiserL +
"\nUpperLidRaiserR: " + UpperLidRaiserR +
"\nUpperLipRaiserL: " + UpperLipRaiserL +
"\nUpperLipRaiserR: " + UpperLipRaiserR;
}
}
}
}

0 comments on commit 63befcb

Please sign in to comment.