aboutsummaryrefslogtreecommitdiffstats
path: root/Lua/game/plugins
diff options
context:
space:
mode:
Diffstat (limited to '')
-rw-r--r--Lua/game/plugins/LuaTest.usdx63
-rw-r--r--Lua/game/plugins/hooks.txt4
2 files changed, 67 insertions, 0 deletions
diff --git a/Lua/game/plugins/LuaTest.usdx b/Lua/game/plugins/LuaTest.usdx
new file mode 100644
index 00000000..4cfd718f
--- /dev/null
+++ b/Lua/game/plugins/LuaTest.usdx
@@ -0,0 +1,63 @@
+function plugin_init()
+ register('lua interface test plugin', 'not Versioned', 'Hawkear');
+
+ require('Usdx.Gl');
+ require('Usdx.TextGl');
+
+ Usdx.Hook('Display.Draw', 'OnDraw');
+
+ return true
+end
+
+function OnDraw()
+ -- Calculate FPS
+ FPScounter = 1 + (FPScounter or 0) -- increment FPScounter (which is nil, when undefined, therefore "or 0")
+ if Usdx.Time() > (LastTime or 0) then
+ LastTime = Usdx.Time() + 1000
+
+ print("FPS: " .. FPScounter - (LastFPScounter or 0)) -- print is only displayed, if compiled with DEBUG
+ LastFPSCounted = FPScounter - (LastFPScounter or 0)
+
+ LastFPScounter = FPScounter
+
+ -- Show the first 200 Textures
+ TexNum = 1 + (TexNum or 0)
+ if TexNum > 200 then TexNum = 1 end
+ print("TexNum: " .. (TexNum or 0))
+ end
+
+ -- draw fps to top right corner
+ TextGl.Style(0)
+ TextGl.Pos(650, 36)
+ TextGl.Size(30)
+ TextGl.Italic(False)
+ Gl.Color(0.9, 0.9, 0.9, 0.7)
+ TextGl.Print('FPS: ' .. LastFPSCounted)
+
+ -- Draw some rectanGles
+ Gl.Enable("Gl_BLEND")
+ Gl.Color(1, 1, 1, 0.5)
+ for i = 1,10 do
+ Gl.Begin("Gl_LINE_loop")
+ Gl.Vertex(0+4*i, 0+4*i);
+ Gl.Vertex(0+4*i, 600-4*i);
+ Gl.Vertex(800-4*i, 600-4*i);
+ Gl.Vertex(800-4*i, 0+4*i);
+ Gl.End()
+ end
+ Gl.Disable("Gl_BLEND")
+
+ -- Display a Texture
+ Gl.Enable("Gl_BLEND")
+ Gl.Enable("Gl_TEXTURE_2D")
+ Gl.Color(1, 1, 1, 1)
+ Gl.BindTexture("Gl_TEXTURE_2D", TexNum or 0)
+ Gl.Begin("Gl_QUADS")
+ Gl.TexCoord(0, 0); Gl.Vertex(10, 10);
+ Gl.TexCoord(0, 1); Gl.Vertex(10, 110);
+ Gl.TexCoord(1, 1); Gl.Vertex(110, 110);
+ Gl.TexCoord(1, 0); Gl.Vertex(110, 10);
+ Gl.End()
+ Gl.Disable("Gl_TEXTURE_2D")
+ Gl.Disable("Gl_BLEND")
+end \ No newline at end of file
diff --git a/Lua/game/plugins/hooks.txt b/Lua/game/plugins/hooks.txt
new file mode 100644
index 00000000..a30bdc62
--- /dev/null
+++ b/Lua/game/plugins/hooks.txt
@@ -0,0 +1,4 @@
+this document lists all hooks that are available and created by usdx
+Usdx.LoadingFinished - called when all plugins are loaded, not breakable
+Display.PreDraw - called before a frame is Drawn - not breakable
+Display.Draw - called after a frame w/ screen is drawn. you can draw above screen here \ No newline at end of file