Skip to content
This repository has been archived by the owner on May 5, 2021. It is now read-only.

Commit

Permalink
Add Mixed AR sample: ARKit + ARCore + HoloLens
Browse files Browse the repository at this point in the history
  • Loading branch information
EgorBo committed Feb 22, 2018
1 parent 58d05a2 commit cd4ad27
Show file tree
Hide file tree
Showing 159 changed files with 2,001 additions and 0 deletions.
126 changes: 126 additions & 0 deletions Mixed/AR/ArSolution.sln
Original file line number Diff line number Diff line change
@@ -0,0 +1,126 @@

Microsoft Visual Studio Solution File, Format Version 12.00
# Visual Studio 15
VisualStudioVersion = 15.0.27130.2024
MinimumVisualStudioVersion = 10.0.40219.1
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "UrhoAR.Droid", "UrhoAR.Droid\UrhoAR.Droid.csproj", "{F4C8A1C2-12ED-4127-885B-8EB356EE2C4D}"
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "UrhoAR.iOS", "UrhoAR.iOS\UrhoAR.iOS.csproj", "{B89A2701-EBF2-423E-AA1C-7BAF7A22EEA6}"
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "UrhoAR.MixedReality", "UrhoAR.MixedReality\UrhoAR.MixedReality.csproj", "{4D7AE260-B1CE-4909-8866-A143F4169950}"
EndProject
Project("{D954291E-2A0B-460D-934E-DC6B0785DB48}") = "Shared", "Shared\Shared.shproj", "{1093514C-6D83-4B69-B591-5CBA9FA72C95}"
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "UrhoAR.Console", "UrhoAR.Console\UrhoAR.Console.csproj", "{0D31E21F-5E43-4FA3-ACF1-2B8C761A348E}"
EndProject
Global
GlobalSection(SharedMSBuildProjectFiles) = preSolution
Shared\Shared.projitems*{0d31e21f-5e43-4fa3-acf1-2b8c761a348e}*SharedItemsImports = 4
Shared\Shared.projitems*{1093514c-6d83-4b69-b591-5cba9fa72c95}*SharedItemsImports = 13
Shared\Shared.projitems*{4d7ae260-b1ce-4909-8866-a143f4169950}*SharedItemsImports = 4
Shared\Shared.projitems*{b89a2701-ebf2-423e-aa1c-7baf7a22eea6}*SharedItemsImports = 4
Shared\Shared.projitems*{f4c8a1c2-12ed-4127-885b-8eb356ee2c4d}*SharedItemsImports = 4
EndGlobalSection
GlobalSection(SolutionConfigurationPlatforms) = preSolution
Debug|Any CPU = Debug|Any CPU
Debug|iPhone = Debug|iPhone
Debug|iPhoneSimulator = Debug|iPhoneSimulator
Debug|x64 = Debug|x64
Debug|x86 = Debug|x86
Release|Any CPU = Release|Any CPU
Release|iPhone = Release|iPhone
Release|iPhoneSimulator = Release|iPhoneSimulator
Release|x64 = Release|x64
Release|x86 = Release|x86
EndGlobalSection
GlobalSection(ProjectConfigurationPlatforms) = postSolution
{F4C8A1C2-12ED-4127-885B-8EB356EE2C4D}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{F4C8A1C2-12ED-4127-885B-8EB356EE2C4D}.Debug|Any CPU.Build.0 = Debug|Any CPU
{F4C8A1C2-12ED-4127-885B-8EB356EE2C4D}.Debug|Any CPU.Deploy.0 = Debug|Any CPU
{F4C8A1C2-12ED-4127-885B-8EB356EE2C4D}.Debug|iPhone.ActiveCfg = Debug|Any CPU
{F4C8A1C2-12ED-4127-885B-8EB356EE2C4D}.Debug|iPhone.Build.0 = Debug|Any CPU
{F4C8A1C2-12ED-4127-885B-8EB356EE2C4D}.Debug|iPhone.Deploy.0 = Debug|Any CPU
{F4C8A1C2-12ED-4127-885B-8EB356EE2C4D}.Debug|iPhoneSimulator.ActiveCfg = Debug|Any CPU
{F4C8A1C2-12ED-4127-885B-8EB356EE2C4D}.Debug|iPhoneSimulator.Build.0 = Debug|Any CPU
{F4C8A1C2-12ED-4127-885B-8EB356EE2C4D}.Debug|iPhoneSimulator.Deploy.0 = Debug|Any CPU
{F4C8A1C2-12ED-4127-885B-8EB356EE2C4D}.Debug|x64.ActiveCfg = Debug|Any CPU
{F4C8A1C2-12ED-4127-885B-8EB356EE2C4D}.Debug|x64.Build.0 = Debug|Any CPU
{F4C8A1C2-12ED-4127-885B-8EB356EE2C4D}.Debug|x64.Deploy.0 = Debug|Any CPU
{F4C8A1C2-12ED-4127-885B-8EB356EE2C4D}.Debug|x86.ActiveCfg = Debug|Any CPU
{F4C8A1C2-12ED-4127-885B-8EB356EE2C4D}.Debug|x86.Build.0 = Debug|Any CPU
{F4C8A1C2-12ED-4127-885B-8EB356EE2C4D}.Debug|x86.Deploy.0 = Debug|Any CPU
{F4C8A1C2-12ED-4127-885B-8EB356EE2C4D}.Release|Any CPU.ActiveCfg = Release|Any CPU
{F4C8A1C2-12ED-4127-885B-8EB356EE2C4D}.Release|Any CPU.Build.0 = Release|Any CPU
{F4C8A1C2-12ED-4127-885B-8EB356EE2C4D}.Release|Any CPU.Deploy.0 = Release|Any CPU
{F4C8A1C2-12ED-4127-885B-8EB356EE2C4D}.Release|iPhone.ActiveCfg = Release|Any CPU
{F4C8A1C2-12ED-4127-885B-8EB356EE2C4D}.Release|iPhone.Build.0 = Release|Any CPU
{F4C8A1C2-12ED-4127-885B-8EB356EE2C4D}.Release|iPhone.Deploy.0 = Release|Any CPU
{F4C8A1C2-12ED-4127-885B-8EB356EE2C4D}.Release|iPhoneSimulator.ActiveCfg = Release|Any CPU
{F4C8A1C2-12ED-4127-885B-8EB356EE2C4D}.Release|iPhoneSimulator.Build.0 = Release|Any CPU
{F4C8A1C2-12ED-4127-885B-8EB356EE2C4D}.Release|iPhoneSimulator.Deploy.0 = Release|Any CPU
{F4C8A1C2-12ED-4127-885B-8EB356EE2C4D}.Release|x64.ActiveCfg = Release|Any CPU
{F4C8A1C2-12ED-4127-885B-8EB356EE2C4D}.Release|x64.Build.0 = Release|Any CPU
{F4C8A1C2-12ED-4127-885B-8EB356EE2C4D}.Release|x64.Deploy.0 = Release|Any CPU
{F4C8A1C2-12ED-4127-885B-8EB356EE2C4D}.Release|x86.ActiveCfg = Release|Any CPU
{F4C8A1C2-12ED-4127-885B-8EB356EE2C4D}.Release|x86.Build.0 = Release|Any CPU
{F4C8A1C2-12ED-4127-885B-8EB356EE2C4D}.Release|x86.Deploy.0 = Release|Any CPU
{B89A2701-EBF2-423E-AA1C-7BAF7A22EEA6}.Debug|Any CPU.ActiveCfg = Debug|iPhone
{B89A2701-EBF2-423E-AA1C-7BAF7A22EEA6}.Debug|iPhone.ActiveCfg = Debug|iPhone
{B89A2701-EBF2-423E-AA1C-7BAF7A22EEA6}.Debug|iPhone.Build.0 = Debug|iPhone
{B89A2701-EBF2-423E-AA1C-7BAF7A22EEA6}.Debug|iPhoneSimulator.ActiveCfg = Debug|iPhoneSimulator
{B89A2701-EBF2-423E-AA1C-7BAF7A22EEA6}.Debug|iPhoneSimulator.Build.0 = Debug|iPhoneSimulator
{B89A2701-EBF2-423E-AA1C-7BAF7A22EEA6}.Debug|x64.ActiveCfg = Debug|iPhone
{B89A2701-EBF2-423E-AA1C-7BAF7A22EEA6}.Debug|x86.ActiveCfg = Debug|iPhone
{B89A2701-EBF2-423E-AA1C-7BAF7A22EEA6}.Release|Any CPU.ActiveCfg = Release|iPhone
{B89A2701-EBF2-423E-AA1C-7BAF7A22EEA6}.Release|iPhone.ActiveCfg = Release|iPhone
{B89A2701-EBF2-423E-AA1C-7BAF7A22EEA6}.Release|iPhone.Build.0 = Release|iPhone
{B89A2701-EBF2-423E-AA1C-7BAF7A22EEA6}.Release|iPhoneSimulator.ActiveCfg = Release|iPhoneSimulator
{B89A2701-EBF2-423E-AA1C-7BAF7A22EEA6}.Release|iPhoneSimulator.Build.0 = Release|iPhoneSimulator
{B89A2701-EBF2-423E-AA1C-7BAF7A22EEA6}.Release|x64.ActiveCfg = Release|iPhone
{B89A2701-EBF2-423E-AA1C-7BAF7A22EEA6}.Release|x86.ActiveCfg = Release|iPhone
{4D7AE260-B1CE-4909-8866-A143F4169950}.Debug|Any CPU.ActiveCfg = Debug|x86
{4D7AE260-B1CE-4909-8866-A143F4169950}.Debug|iPhone.ActiveCfg = Debug|x86
{4D7AE260-B1CE-4909-8866-A143F4169950}.Debug|iPhoneSimulator.ActiveCfg = Debug|x86
{4D7AE260-B1CE-4909-8866-A143F4169950}.Debug|x64.ActiveCfg = Debug|x64
{4D7AE260-B1CE-4909-8866-A143F4169950}.Debug|x64.Build.0 = Debug|x64
{4D7AE260-B1CE-4909-8866-A143F4169950}.Debug|x64.Deploy.0 = Debug|x64
{4D7AE260-B1CE-4909-8866-A143F4169950}.Debug|x86.ActiveCfg = Debug|x86
{4D7AE260-B1CE-4909-8866-A143F4169950}.Debug|x86.Build.0 = Debug|x86
{4D7AE260-B1CE-4909-8866-A143F4169950}.Debug|x86.Deploy.0 = Debug|x86
{4D7AE260-B1CE-4909-8866-A143F4169950}.Release|Any CPU.ActiveCfg = Release|x86
{4D7AE260-B1CE-4909-8866-A143F4169950}.Release|iPhone.ActiveCfg = Release|x86
{4D7AE260-B1CE-4909-8866-A143F4169950}.Release|iPhoneSimulator.ActiveCfg = Release|x86
{4D7AE260-B1CE-4909-8866-A143F4169950}.Release|x64.ActiveCfg = Release|x64
{4D7AE260-B1CE-4909-8866-A143F4169950}.Release|x64.Build.0 = Release|x64
{4D7AE260-B1CE-4909-8866-A143F4169950}.Release|x64.Deploy.0 = Release|x64
{4D7AE260-B1CE-4909-8866-A143F4169950}.Release|x86.ActiveCfg = Release|x86
{4D7AE260-B1CE-4909-8866-A143F4169950}.Release|x86.Build.0 = Release|x86
{4D7AE260-B1CE-4909-8866-A143F4169950}.Release|x86.Deploy.0 = Release|x86
{0D31E21F-5E43-4FA3-ACF1-2B8C761A348E}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{0D31E21F-5E43-4FA3-ACF1-2B8C761A348E}.Debug|Any CPU.Build.0 = Debug|Any CPU
{0D31E21F-5E43-4FA3-ACF1-2B8C761A348E}.Debug|iPhone.ActiveCfg = Debug|Any CPU
{0D31E21F-5E43-4FA3-ACF1-2B8C761A348E}.Debug|iPhone.Build.0 = Debug|Any CPU
{0D31E21F-5E43-4FA3-ACF1-2B8C761A348E}.Debug|iPhoneSimulator.ActiveCfg = Debug|Any CPU
{0D31E21F-5E43-4FA3-ACF1-2B8C761A348E}.Debug|iPhoneSimulator.Build.0 = Debug|Any CPU
{0D31E21F-5E43-4FA3-ACF1-2B8C761A348E}.Debug|x64.ActiveCfg = Debug|Any CPU
{0D31E21F-5E43-4FA3-ACF1-2B8C761A348E}.Debug|x64.Build.0 = Debug|Any CPU
{0D31E21F-5E43-4FA3-ACF1-2B8C761A348E}.Debug|x86.ActiveCfg = Debug|Any CPU
{0D31E21F-5E43-4FA3-ACF1-2B8C761A348E}.Debug|x86.Build.0 = Debug|Any CPU
{0D31E21F-5E43-4FA3-ACF1-2B8C761A348E}.Release|Any CPU.ActiveCfg = Release|Any CPU
{0D31E21F-5E43-4FA3-ACF1-2B8C761A348E}.Release|Any CPU.Build.0 = Release|Any CPU
{0D31E21F-5E43-4FA3-ACF1-2B8C761A348E}.Release|iPhone.ActiveCfg = Release|Any CPU
{0D31E21F-5E43-4FA3-ACF1-2B8C761A348E}.Release|iPhone.Build.0 = Release|Any CPU
{0D31E21F-5E43-4FA3-ACF1-2B8C761A348E}.Release|iPhoneSimulator.ActiveCfg = Release|Any CPU
{0D31E21F-5E43-4FA3-ACF1-2B8C761A348E}.Release|iPhoneSimulator.Build.0 = Release|Any CPU
{0D31E21F-5E43-4FA3-ACF1-2B8C761A348E}.Release|x64.ActiveCfg = Release|Any CPU
{0D31E21F-5E43-4FA3-ACF1-2B8C761A348E}.Release|x64.Build.0 = Release|Any CPU
{0D31E21F-5E43-4FA3-ACF1-2B8C761A348E}.Release|x86.ActiveCfg = Release|Any CPU
{0D31E21F-5E43-4FA3-ACF1-2B8C761A348E}.Release|x86.Build.0 = Release|Any CPU
EndGlobalSection
GlobalSection(SolutionProperties) = preSolution
HideSolutionNode = FALSE
EndGlobalSection
GlobalSection(ExtensibilityGlobals) = postSolution
SolutionGuid = {A913317A-CD64-4234-A112-A74963092672}
EndGlobalSection
EndGlobal
7 changes: 7 additions & 0 deletions Mixed/AR/MyData/Materials/Earth.xml
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
<material>
<technique name="Techniques/DiffNormalSpec.xml" quality="0" />
<texture unit="diffuse" name="Textures/Earth.jpg" />
<texture unit="normal" name="Textures/Earth_NormalsMap.png" />
<texture unit="spec" name="Textures/Earth_SpecularMap.png" />
<parameter name="SpecColor" value="0.2 0.2 0.2 0.7" />
</material>
6 changes: 6 additions & 0 deletions Mixed/AR/MyData/Materials/Moon.xml
Original file line number Diff line number Diff line change
@@ -0,0 +1,6 @@
<material>
<!--Unlike Earth.xml, this material uses built-in DiffNormal technique-->
<technique name="Techniques/DiffNormal.xml" quality="0" />
<texture unit="diffuse" name="Textures/Moon.jpg" />
<texture unit="normal" name="Textures/Moon_NormalsMap.png" />
</material>
Binary file added Mixed/AR/MyData/Textures/Earth.jpg
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added Mixed/AR/MyData/Textures/Earth_Clouds.jpg
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added Mixed/AR/MyData/Textures/Earth_Night.jpg
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added Mixed/AR/MyData/Textures/Earth_NormalsMap.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added Mixed/AR/MyData/Textures/Earth_SpecularMap.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
10 changes: 10 additions & 0 deletions Mixed/AR/MyData/Textures/License.txt
Original file line number Diff line number Diff line change
@@ -0,0 +1,10 @@
--------------------------
Assets under CC 4.0 License
--------------------------
Earth.jpg
Moon.jpg
Earth_SpecularMap.png
Earth_Clouds.jpg

website: http://www.solarsystemscope.com/textures/
license: https://creativecommons.org/licenses/by/4.0/
Binary file added Mixed/AR/MyData/Textures/Moon.jpg
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added Mixed/AR/MyData/Textures/Moon_NormalsMap.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added Mixed/AR/MyData/Textures/Space.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
119 changes: 119 additions & 0 deletions Mixed/AR/Shared/MyApp.cs
Original file line number Diff line number Diff line change
@@ -0,0 +1,119 @@
using System;
using System.Diagnostics;
using Urho;
using Urho.Actions;
using Urho.Gui;
using Urho.Shapes;

namespace UrhoAR
{
public partial class MyApp
{
Node earthNode;
Node rootNode;

[Preserve]
public MyApp(ApplicationOptions options) : base(options) { }

static MyApp()
{
UnhandledException += (s, e) => {
if (Debugger.IsAttached)
Debugger.Break();
e.Handled = true;
};
}

protected override async void Start()
{
base.Start();

SetupAR();

// UI text
var helloText = new Text(Context);
helloText.Value = "Hello World from UrhoSharp";
helloText.HorizontalAlignment = HorizontalAlignment.Center;
helloText.VerticalAlignment = VerticalAlignment.Top;
helloText.SetColor(new Color(r: 0.5f, g: 1f, b: 1f));
helloText.SetFont(font: CoreAssets.Fonts.AnonymousPro, size: 30);
UI.Root.AddChild(helloText);

// Create a node for the Earth
rootNode = Scene.CreateChild();
rootNode.Position = new Vector3(0, 0, 0.6f); //60cm away
earthNode = rootNode.CreateChild();
earthNode.SetScale(0.5f); //25cm radius
earthNode.Rotation = new Quaternion(0, 180, 0);

// Create a static model component - Sphere:
var earth = earthNode.CreateComponent<Sphere>();
earth.SetMaterial(ResourceCache.GetMaterial("Materials/Earth.xml")); // or simply Material.FromImage("Textures/Earth.jpg")

// Same steps for the Moon
var moonNode = earthNode.CreateChild();
moonNode.SetScale(0.27f); // Relative size of the Moon is 1738.1km/6378.1km
moonNode.Position = new Vector3(1.2f, 0, 0);
var moon = moonNode.CreateComponent<Sphere>();
moon.SetMaterial(Material.FromImage("Textures/Moon.jpg"));

// Clouds
var cloudsNode = earthNode.CreateChild();
cloudsNode.SetScale(1.02f);
var clouds = cloudsNode.CreateComponent<Sphere>();
var cloudsMaterial = new Material();
cloudsMaterial.SetTexture(TextureUnit.Diffuse, ResourceCache.GetTexture2D("Textures/Earth_Clouds.jpg"));
cloudsMaterial.SetTechnique(0, CoreAssets.Techniques.DiffAddAlpha);
clouds.SetMaterial(cloudsMaterial);

// FPS
new MonoDebugHud(this).Show(Color.Green, 25);

// Run a an action to spin the Earth (7 degrees per second)
rootNode.RunActions(new RepeatForever(new RotateBy(duration: 1f, deltaAngleX: 0, deltaAngleY: -7, deltaAngleZ: 0)));
// Spin clouds:
cloudsNode.RunActions(new RepeatForever(new RotateBy(duration: 1f, deltaAngleX: 0, deltaAngleY: 1, deltaAngleZ: 0)));

AddCity(lat: 0, lon: 0, name: "(0, 0)");
AddCity(lat: 53.9045f, lon: 27.5615f, name: "Minsk");
AddCity(lat: 51.5074f, lon: 0.1278f, name: "London");
AddCity(lat: 40.7128f, lon: -74.0059f, name: "New-York");
AddCity(lat: 37.7749f, lon: -122.4194f, name: "San Francisco");
AddCity(lat: 39.9042f, lon: 116.4074f, name: "Beijing");
AddCity(lat: -31.9505f, lon: 115.8605f, name: "Perth");
}

public void AddCity(float lat, float lon, string name)
{
var height = earthNode.Scale.Y / 2f;

lat = (float)Math.PI * lat / 180f - (float)Math.PI / 2f;
lon = (float)Math.PI * lon / 180f;

float x = height * (float)Math.Sin(lat) * (float)Math.Cos(lon);
float z = height * (float)Math.Sin(lat) * (float)Math.Sin(lon);
float y = height * (float)Math.Cos(lat);

var markerNode = rootNode.CreateChild();
markerNode.Scale = Vector3.One * 0.03f;
markerNode.Position = new Vector3((float)x, (float)y, (float)z);
markerNode.CreateComponent<Sphere>();
markerNode.RunActionsAsync(new RepeatForever(
new TintTo(0.5f, Color.White),
new TintTo(0.5f, Randoms.NextColor())));

var textPos = markerNode.Position;
textPos.Normalize();

var textNode = markerNode.CreateChild();
textNode.Position = textPos * 1;
textNode.SetScale(1.5f);
textNode.LookAt(Vector3.Zero, Vector3.Up, TransformSpace.Parent);
var text = textNode.CreateComponent<Text3D>();
text.SetFont(CoreAssets.Fonts.AnonymousPro, 80);
text.EffectColor = Color.Black;
text.TextEffect = TextEffect.Shadow;
text.Text = name;
}
}
}
14 changes: 14 additions & 0 deletions Mixed/AR/Shared/Shared.projitems
Original file line number Diff line number Diff line change
@@ -0,0 +1,14 @@
<?xml version="1.0" encoding="utf-8"?>
<Project xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<PropertyGroup>
<MSBuildAllProjects>$(MSBuildAllProjects);$(MSBuildThisFileFullPath)</MSBuildAllProjects>
<HasSharedItems>true</HasSharedItems>
<SharedGUID>1093514c-6d83-4b69-b591-5cba9fa72c95</SharedGUID>
</PropertyGroup>
<PropertyGroup Label="Configuration">
<Import_RootNamespace>Shared</Import_RootNamespace>
</PropertyGroup>
<ItemGroup>
<Compile Include="$(MSBuildThisFileDirectory)MyApp.cs" />
</ItemGroup>
</Project>
13 changes: 13 additions & 0 deletions Mixed/AR/Shared/Shared.shproj
Original file line number Diff line number Diff line change
@@ -0,0 +1,13 @@
<?xml version="1.0" encoding="utf-8"?>
<Project ToolsVersion="15.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<PropertyGroup Label="Globals">
<ProjectGuid>1093514c-6d83-4b69-b591-5cba9fa72c95</ProjectGuid>
<MinimumVisualStudioVersion>14.0</MinimumVisualStudioVersion>
</PropertyGroup>
<Import Project="$(MSBuildExtensionsPath)\$(MSBuildToolsVersion)\Microsoft.Common.props" Condition="Exists('$(MSBuildExtensionsPath)\$(MSBuildToolsVersion)\Microsoft.Common.props')" />
<Import Project="$(MSBuildExtensionsPath32)\Microsoft\VisualStudio\v$(VisualStudioVersion)\CodeSharing\Microsoft.CodeSharing.Common.Default.props" />
<Import Project="$(MSBuildExtensionsPath32)\Microsoft\VisualStudio\v$(VisualStudioVersion)\CodeSharing\Microsoft.CodeSharing.Common.props" />
<PropertyGroup />
<Import Project="Shared.projitems" Label="Shared" />
<Import Project="$(MSBuildExtensionsPath32)\Microsoft\VisualStudio\v$(VisualStudioVersion)\CodeSharing\Microsoft.CodeSharing.CSharp.targets" />
</Project>
6 changes: 6 additions & 0 deletions Mixed/AR/UrhoAR.Console/App.config
Original file line number Diff line number Diff line change
@@ -0,0 +1,6 @@
<?xml version="1.0" encoding="utf-8" ?>
<configuration>
<startup>
<supportedRuntime version="v4.0" sku=".NETFramework,Version=v4.7.1" />
</startup>
</configuration>
17 changes: 17 additions & 0 deletions Mixed/AR/UrhoAR.Console/MyApp.Console.cs
Original file line number Diff line number Diff line change
@@ -0,0 +1,17 @@
using System;
using System.Diagnostics;
using Urho;
using Urho.Actions;
using Urho.Gui;
using Urho.Shapes;

namespace UrhoAR
{
public partial class MyApp : SimpleApplication
{
void SetupAR()
{
Viewport.SetClearColor(Color.Black);
}
}
}
11 changes: 11 additions & 0 deletions Mixed/AR/UrhoAR.Console/Program.cs
Original file line number Diff line number Diff line change
@@ -0,0 +1,11 @@
namespace UrhoAR.Console
{
class Program
{
static void Main(string[] args)
{
new MyApp(new Urho.ApplicationOptions("MyData")).Run();
// For a console app Urho will create a Windows/macOS/Linux window using SDL
}
}
}
36 changes: 36 additions & 0 deletions Mixed/AR/UrhoAR.Console/Properties/AssemblyInfo.cs
Original file line number Diff line number Diff line change
@@ -0,0 +1,36 @@
using System.Reflection;
using System.Runtime.CompilerServices;
using System.Runtime.InteropServices;

// General Information about an assembly is controlled through the following
// set of attributes. Change these attribute values to modify the information
// associated with an assembly.
[assembly: AssemblyTitle("UrhoAR.Console")]
[assembly: AssemblyDescription("")]
[assembly: AssemblyConfiguration("")]
[assembly: AssemblyCompany("")]
[assembly: AssemblyProduct("UrhoAR.Console")]
[assembly: AssemblyCopyright("Copyright © 2018")]
[assembly: AssemblyTrademark("")]
[assembly: AssemblyCulture("")]

// Setting ComVisible to false makes the types in this assembly not visible
// to COM components. If you need to access a type in this assembly from
// COM, set the ComVisible attribute to true on that type.
[assembly: ComVisible(false)]

// The following GUID is for the ID of the typelib if this project is exposed to COM
[assembly: Guid("0d31e21f-5e43-4fa3-acf1-2b8c761a348e")]

// Version information for an assembly consists of the following four values:
//
// Major Version
// Minor Version
// Build Number
// Revision
//
// You can specify all the values or you can default the Build and Revision Numbers
// by using the '*' as shown below:
// [assembly: AssemblyVersion("1.0.*")]
[assembly: AssemblyVersion("1.0.0.0")]
[assembly: AssemblyFileVersion("1.0.0.0")]
Loading

0 comments on commit cd4ad27

Please sign in to comment.