diff --git a/Content/UniversalEditor.Content.PlatformIndependent/Templates/Project/SCE/PSM/BasicProject.uexml b/Content/UniversalEditor.Content.PlatformIndependent/Templates/Project/SCE/PSM/BasicProject.uexml
new file mode 100644
index 00000000..d4958f8c
--- /dev/null
+++ b/Content/UniversalEditor.Content.PlatformIndependent/Templates/Project/SCE/PSM/BasicProject.uexml
@@ -0,0 +1,18 @@
+
+
+
+
+
+ Basic PlayStation(R) Mobile Project
+ PsmApp
+ Creates a basic PlayStation Mobile app for developing on PlayStation Vita and PlayStation 3.
+
+
+ Sony
+ PlayStation
+
+
+
+
+
+
\ No newline at end of file
diff --git a/Content/UniversalEditor.Content.PlatformIndependent/Templates/Project/SCE/PSM/content/$(Project.Title).csproj b/Content/UniversalEditor.Content.PlatformIndependent/Templates/Project/SCE/PSM/content/$(Project.Title).csproj
new file mode 100755
index 00000000..0d4c421e
--- /dev/null
+++ b/Content/UniversalEditor.Content.PlatformIndependent/Templates/Project/SCE/PSM/content/$(Project.Title).csproj
@@ -0,0 +1,49 @@
+
+
+
+ Debug
+ AnyCPU
+ 10.0.0
+ 2.0
+ {7FB49F92-2DB6-42DE-8A9B-8568615CAD32}
+ {69878862-DA7D-4DC6-B0A1-50D8FAB4242F};{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}
+ Exe
+ PsmRuntime
+ PsmRuntime
+
+
+ true
+ full
+ false
+ bin\Debug
+ DEBUG;
+ prompt
+ 4
+ false
+
+
+ none
+ false
+ bin\Release
+ prompt
+ 4
+ false
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/Content/UniversalEditor.Content.PlatformIndependent/Templates/Project/SCE/PSM/content/AppMain.cs b/Content/UniversalEditor.Content.PlatformIndependent/Templates/Project/SCE/PSM/content/AppMain.cs
new file mode 100755
index 00000000..c909a7ab
--- /dev/null
+++ b/Content/UniversalEditor.Content.PlatformIndependent/Templates/Project/SCE/PSM/content/AppMain.cs
@@ -0,0 +1,48 @@
+using System;
+using System.Collections.Generic;
+
+using Sce.PlayStation.Core;
+using Sce.PlayStation.Core.Environment;
+using Sce.PlayStation.Core.Graphics;
+using Sce.PlayStation.Core.Input;
+
+namespace $(Project.Title)
+{
+ public class AppMain
+ {
+ private static GraphicsContext graphics;
+
+ public static void Main (string[] args)
+ {
+ Initialize ();
+
+ while (true) {
+ SystemEvents.CheckEvents ();
+ Update ();
+ Render ();
+ }
+ }
+
+ public static void Initialize ()
+ {
+ // Set up the graphics system
+ graphics = new GraphicsContext ();
+ }
+
+ public static void Update ()
+ {
+ // Query gamepad for current state
+ var gamePadData = GamePad.GetData (0);
+ }
+
+ public static void Render ()
+ {
+ // Clear the screen
+ graphics.SetClearColor (0.0f, 0.0f, 0.0f, 0.0f);
+ graphics.Clear ();
+
+ // Present the screen
+ graphics.SwapBuffers ();
+ }
+ }
+}
diff --git a/Content/UniversalEditor.Content.PlatformIndependent/Templates/Project/SCE/PSM/content/app.xml b/Content/UniversalEditor.Content.PlatformIndependent/Templates/Project/SCE/PSM/content/app.xml
new file mode 100755
index 00000000..9eaab357
--- /dev/null
+++ b/Content/UniversalEditor.Content.PlatformIndependent/Templates/Project/SCE/PSM/content/app.xml
@@ -0,0 +1,10 @@
+
+
+
+
+
+
+
+
+
+
diff --git a/Content/UniversalEditor.Content.PlatformIndependent/Templates/Project/SCE/PSM/content/shaders/Simple.fcg b/Content/UniversalEditor.Content.PlatformIndependent/Templates/Project/SCE/PSM/content/shaders/Simple.fcg
new file mode 100755
index 00000000..27e20aec
--- /dev/null
+++ b/Content/UniversalEditor.Content.PlatformIndependent/Templates/Project/SCE/PSM/content/shaders/Simple.fcg
@@ -0,0 +1,6 @@
+
+void main( float4 out Color : COLOR,
+ uniform float4 MaterialColor )
+{
+ Color = MaterialColor;
+}
diff --git a/Content/UniversalEditor.Content.PlatformIndependent/Templates/Project/SCE/PSM/content/shaders/Simple.vcg b/Content/UniversalEditor.Content.PlatformIndependent/Templates/Project/SCE/PSM/content/shaders/Simple.vcg
new file mode 100755
index 00000000..a3a85c06
--- /dev/null
+++ b/Content/UniversalEditor.Content.PlatformIndependent/Templates/Project/SCE/PSM/content/shaders/Simple.vcg
@@ -0,0 +1,8 @@
+
+void main( float4 in a_Position : POSITION,
+ float4 out v_Position : POSITION,
+ uniform float4x4 WorldViewProj
+ )
+{
+ v_Position = mul( a_Position, WorldViewProj );
+}
diff --git a/Content/UniversalEditor.Content.PlatformIndependent/UniversalEditor.Content.PlatformIndependent.csproj b/Content/UniversalEditor.Content.PlatformIndependent/UniversalEditor.Content.PlatformIndependent.csproj
index ebdd42f2..87826c03 100644
--- a/Content/UniversalEditor.Content.PlatformIndependent/UniversalEditor.Content.PlatformIndependent.csproj
+++ b/Content/UniversalEditor.Content.PlatformIndependent/UniversalEditor.Content.PlatformIndependent.csproj
@@ -307,6 +307,12 @@
+
+
+
+
+
+
@@ -338,6 +344,8 @@
+
+