summaryrefslogtreecommitdiff
path: root/src/util/screen.h
diff options
context:
space:
mode:
Diffstat (limited to 'src/util/screen.h')
-rw-r--r--src/util/screen.h41
1 files changed, 41 insertions, 0 deletions
diff --git a/src/util/screen.h b/src/util/screen.h
new file mode 100644
index 0000000..34effb3
--- /dev/null
+++ b/src/util/screen.h
@@ -0,0 +1,41 @@
+#pragma once
+#include "typedef.h"
+#include "vector.h"
+
+extern I32* canvas;
+
+inline VEC2 s_tl( VEC2 offset = { 0.f, 0.f } ) {
+ return { offset.x, offset.y };
+}
+
+inline VEC2 s_tr( VEC2 offset = { 0.f, 0.f } ) {
+ return { offset.x + (F32)canvas[0], offset.y };
+}
+
+inline VEC2 s_bl( VEC2 offset = { 0.f, 0.f } ) {
+ return { offset.x, offset.y + (F32)canvas[1] };
+}
+
+inline VEC2 s_br( VEC2 offset = { 0.f, 0.f } ) {
+ return { offset.x + (F32)canvas[0], offset.y + (F32)canvas[1] };
+}
+
+inline VEC2 s_c( VEC2 offset = { 0.f, 0.f } ) {
+ return { offset.x + (F32)canvas[0] / 2, offset.y + (F32)canvas[1] / 2 };
+}
+
+inline VEC2 s_tc( VEC2 offset = { 0.f, 0.f } ) {
+ return { offset.x + (F32)canvas[0] / 2, 0 };
+}
+
+inline VEC2 s_bc( VEC2 offset = { 0.f, 0.f } ) {
+ return { offset.x + (F32)canvas[0] / 2, (F32)canvas[1] };
+}
+
+inline VEC2 s_cl( VEC2 offset = { 0.f, 0.f } ) {
+ return { 0, offset.y + (F32)canvas[1] / 2 };
+}
+
+inline VEC2 s_cr( VEC2 offset = { 0.f, 0.f } ) {
+ return { (F32)canvas[0], offset.y + (F32)canvas[1] / 2 };
+}