woollybah 5 роки тому
батько
коміт
8dda385d10

+ 1 - 0
.gitignore

@@ -6,3 +6,4 @@
 *.exe
 
 glfwopengl.mod/_out_/
+*.app

+ 1 - 1
examples/learnopengl/1.getting_started/4.1.textures.bmx

@@ -122,7 +122,7 @@ glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MIN_FILTER, GL_LINEAR)
 glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MAG_FILTER, GL_LINEAR)
 
 ' load image, create texture and generate mipmaps
-Local pixmap:TPixmap = LoadPixmap("../resources/textures/container.jpg")
+Local pixmap:TPixmap = LoadPixmap(PATH_PREFIX + "../resources/textures/container.jpg")
 If pixmap Then
 	glTexImage2D(GL_TEXTURE_2D, 0, GL_RGB, pixmap.width, pixmap.height, 0, GL_RGB, GL_UNSIGNED_BYTE, pixmap.pixels)
 	glGenerateMipmap(GL_TEXTURE_2D)

+ 2 - 2
examples/learnopengl/1.getting_started/4.2.textures_combined.bmx

@@ -126,7 +126,7 @@ glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MIN_FILTER, GL_LINEAR)
 glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MAG_FILTER, GL_LINEAR)
 
 ' load image, create texture and generate mipmaps
-Local pixmap:TPixmap = LoadPixmap("../resources/textures/container.jpg")
+Local pixmap:TPixmap = LoadPixmap(PATH_PREFIX + "../resources/textures/container.jpg")
 If pixmap Then
 	pixmap = YFlipPixmap(pixmap)
 	glTexImage2D(GL_TEXTURE_2D, 0, GL_RGB, pixmap.width, pixmap.height, 0, GL_RGB, GL_UNSIGNED_BYTE, pixmap.pixels)
@@ -150,7 +150,7 @@ glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MIN_FILTER, GL_LINEAR)
 glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MAG_FILTER, GL_LINEAR)
 
 ' load image, create texture and generate mipmaps
-pixmap = LoadPixmap("../resources/textures/awesomeface.png")
+pixmap = LoadPixmap(PATH_PREFIX + "../resources/textures/awesomeface.png")
 If pixmap Then
 	pixmap = YFlipPixmap(pixmap)
 	glTexImage2D(GL_TEXTURE_2D, 0, GL_RGB, pixmap.width, pixmap.height, 0, GL_RGBA, GL_UNSIGNED_BYTE, pixmap.pixels)

+ 2 - 2
examples/learnopengl/1.getting_started/5.1.transformations.bmx

@@ -120,7 +120,7 @@ glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MIN_FILTER, GL_LINEAR)
 glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MAG_FILTER, GL_LINEAR)
 
 ' load image, create texture and generate mipmaps
-Local pixmap:TPixmap = LoadPixmap("../resources/textures/container.jpg")
+Local pixmap:TPixmap = LoadPixmap(PATH_PREFIX + "../resources/textures/container.jpg")
 If pixmap Then
 	pixmap = YFlipPixmap(pixmap)
 	glTexImage2D(GL_TEXTURE_2D, 0, GL_RGB, pixmap.width, pixmap.height, 0, GL_RGB, GL_UNSIGNED_BYTE, pixmap.pixels)
@@ -144,7 +144,7 @@ glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MIN_FILTER, GL_LINEAR)
 glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MAG_FILTER, GL_LINEAR)
 
 ' load image, create texture and generate mipmaps
-pixmap = LoadPixmap("../resources/textures/awesomeface.png")
+pixmap = LoadPixmap(PATH_PREFIX + "../resources/textures/awesomeface.png")
 If pixmap Then
 	pixmap = YFlipPixmap(pixmap)
 	glTexImage2D(GL_TEXTURE_2D, 0, GL_RGB, pixmap.width, pixmap.height, 0, GL_RGBA, GL_UNSIGNED_BYTE, pixmap.pixels)

+ 2 - 2
examples/learnopengl/1.getting_started/6.1.coordinate_systems.bmx

@@ -120,7 +120,7 @@ glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MIN_FILTER, GL_LINEAR)
 glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MAG_FILTER, GL_LINEAR)
 
 ' load image, create texture and generate mipmaps
-Local pixmap:TPixmap = LoadPixmap("../resources/textures/container.jpg")
+Local pixmap:TPixmap = LoadPixmap(PATH_PREFIX + "../resources/textures/container.jpg")
 If pixmap Then
 	pixmap = YFlipPixmap(pixmap)
 	glTexImage2D(GL_TEXTURE_2D, 0, GL_RGB, pixmap.width, pixmap.height, 0, GL_RGB, GL_UNSIGNED_BYTE, pixmap.pixels)
@@ -144,7 +144,7 @@ glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MIN_FILTER, GL_LINEAR)
 glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MAG_FILTER, GL_LINEAR)
 
 ' load image, create texture and generate mipmaps
-pixmap = LoadPixmap("../resources/textures/awesomeface.png")
+pixmap = LoadPixmap(PATH_PREFIX + "../resources/textures/awesomeface.png")
 If pixmap Then
 	pixmap = YFlipPixmap(pixmap)
 	glTexImage2D(GL_TEXTURE_2D, 0, GL_RGB, pixmap.width, pixmap.height, 0, GL_RGBA, GL_UNSIGNED_BYTE, pixmap.pixels)

+ 2 - 2
examples/learnopengl/1.getting_started/6.2.coordinate_systems_depth.bmx

@@ -151,7 +151,7 @@ glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MIN_FILTER, GL_LINEAR)
 glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MAG_FILTER, GL_LINEAR)
 
 ' load image, create texture and generate mipmaps
-Local pixmap:TPixmap = LoadPixmap("../resources/textures/container.jpg")
+Local pixmap:TPixmap = LoadPixmap(PATH_PREFIX + "../resources/textures/container.jpg")
 If pixmap Then
 	pixmap = YFlipPixmap(pixmap)
 	glTexImage2D(GL_TEXTURE_2D, 0, GL_RGB, pixmap.width, pixmap.height, 0, GL_RGB, GL_UNSIGNED_BYTE, pixmap.pixels)
@@ -175,7 +175,7 @@ glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MIN_FILTER, GL_LINEAR)
 glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MAG_FILTER, GL_LINEAR)
 
 ' load image, create texture and generate mipmaps
-pixmap = LoadPixmap("../resources/textures/awesomeface.png")
+pixmap = LoadPixmap(PATH_PREFIX + "../resources/textures/awesomeface.png")
 If pixmap Then
 	pixmap = YFlipPixmap(pixmap)
 	glTexImage2D(GL_TEXTURE_2D, 0, GL_RGB, pixmap.width, pixmap.height, 0, GL_RGBA, GL_UNSIGNED_BYTE, pixmap.pixels)

+ 2 - 2
examples/learnopengl/1.getting_started/6.3.coordinate_systems_multiple.bmx

@@ -165,7 +165,7 @@ glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MIN_FILTER, GL_LINEAR)
 glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MAG_FILTER, GL_LINEAR)
 
 ' load image, create texture and generate mipmaps
-Local pixmap:TPixmap = LoadPixmap("../resources/textures/container.jpg")
+Local pixmap:TPixmap = LoadPixmap(PATH_PREFIX + "../resources/textures/container.jpg")
 If pixmap Then
 	pixmap = YFlipPixmap(pixmap)
 	glTexImage2D(GL_TEXTURE_2D, 0, GL_RGB, pixmap.width, pixmap.height, 0, GL_RGB, GL_UNSIGNED_BYTE, pixmap.pixels)
@@ -189,7 +189,7 @@ glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MIN_FILTER, GL_LINEAR)
 glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MAG_FILTER, GL_LINEAR)
 
 ' load image, create texture and generate mipmaps
-pixmap = LoadPixmap("../resources/textures/awesomeface.png")
+pixmap = LoadPixmap(PATH_PREFIX + "../resources/textures/awesomeface.png")
 If pixmap Then
 	pixmap = YFlipPixmap(pixmap)
 	glTexImage2D(GL_TEXTURE_2D, 0, GL_RGB, pixmap.width, pixmap.height, 0, GL_RGBA, GL_UNSIGNED_BYTE, pixmap.pixels)

+ 2 - 2
examples/learnopengl/1.getting_started/7.1.camera_circle.bmx

@@ -165,7 +165,7 @@ glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MIN_FILTER, GL_LINEAR)
 glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MAG_FILTER, GL_LINEAR)
 
 ' load image, create texture and generate mipmaps
-Local pixmap:TPixmap = LoadPixmap("../resources/textures/container.jpg")
+Local pixmap:TPixmap = LoadPixmap(PATH_PREFIX + "../resources/textures/container.jpg")
 If pixmap Then
 	pixmap = YFlipPixmap(pixmap)
 	glTexImage2D(GL_TEXTURE_2D, 0, GL_RGB, pixmap.width, pixmap.height, 0, GL_RGB, GL_UNSIGNED_BYTE, pixmap.pixels)
@@ -189,7 +189,7 @@ glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MIN_FILTER, GL_LINEAR)
 glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MAG_FILTER, GL_LINEAR)
 
 ' load image, create texture and generate mipmaps
-pixmap = LoadPixmap("../resources/textures/awesomeface.png")
+pixmap = LoadPixmap(PATH_PREFIX + "../resources/textures/awesomeface.png")
 If pixmap Then
 	pixmap = YFlipPixmap(pixmap)
 	glTexImage2D(GL_TEXTURE_2D, 0, GL_RGB, pixmap.width, pixmap.height, 0, GL_RGBA, GL_UNSIGNED_BYTE, pixmap.pixels)

+ 2 - 2
examples/learnopengl/1.getting_started/7.2.camera_keyboard_dt.bmx

@@ -188,7 +188,7 @@ glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MIN_FILTER, GL_LINEAR)
 glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MAG_FILTER, GL_LINEAR)
 
 ' load image, create texture and generate mipmaps
-Local pixmap:TPixmap = LoadPixmap("../resources/textures/container.jpg")
+Local pixmap:TPixmap = LoadPixmap(PATH_PREFIX + "../resources/textures/container.jpg")
 If pixmap Then
 	pixmap = YFlipPixmap(pixmap)
 	glTexImage2D(GL_TEXTURE_2D, 0, GL_RGB, pixmap.width, pixmap.height, 0, GL_RGB, GL_UNSIGNED_BYTE, pixmap.pixels)
@@ -212,7 +212,7 @@ glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MIN_FILTER, GL_LINEAR)
 glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MAG_FILTER, GL_LINEAR)
 
 ' load image, create texture and generate mipmaps
-pixmap = LoadPixmap("../resources/textures/awesomeface.png")
+pixmap = LoadPixmap(PATH_PREFIX + "../resources/textures/awesomeface.png")
 If pixmap Then
 	pixmap = YFlipPixmap(pixmap)
 	glTexImage2D(GL_TEXTURE_2D, 0, GL_RGB, pixmap.width, pixmap.height, 0, GL_RGBA, GL_UNSIGNED_BYTE, pixmap.pixels)

+ 2 - 2
examples/learnopengl/1.getting_started/7.3.camera_mouse_zoom.bmx

@@ -244,7 +244,7 @@ glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MIN_FILTER, GL_LINEAR)
 glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MAG_FILTER, GL_LINEAR)
 
 ' load image, create texture and generate mipmaps
-Local pixmap:TPixmap = LoadPixmap("../resources/textures/container.jpg")
+Local pixmap:TPixmap = LoadPixmap(PATH_PREFIX + "../resources/textures/container.jpg")
 If pixmap Then
 	pixmap = YFlipPixmap(pixmap)
 	glTexImage2D(GL_TEXTURE_2D, 0, GL_RGB, pixmap.width, pixmap.height, 0, GL_RGB, GL_UNSIGNED_BYTE, pixmap.pixels)
@@ -268,7 +268,7 @@ glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MIN_FILTER, GL_LINEAR)
 glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MAG_FILTER, GL_LINEAR)
 
 ' load image, create texture and generate mipmaps
-pixmap = LoadPixmap("../resources/textures/awesomeface.png")
+pixmap = LoadPixmap(PATH_PREFIX + "../resources/textures/awesomeface.png")
 If pixmap Then
 	pixmap = YFlipPixmap(pixmap)
 	glTexImage2D(GL_TEXTURE_2D, 0, GL_RGB, pixmap.width, pixmap.height, 0, GL_RGBA, GL_UNSIGNED_BYTE, pixmap.pixels)

+ 2 - 2
examples/learnopengl/1.getting_started/7.4.camera_class.bmx

@@ -212,7 +212,7 @@ glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MIN_FILTER, GL_LINEAR)
 glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MAG_FILTER, GL_LINEAR)
 
 ' load image, create texture and generate mipmaps
-Local pixmap:TPixmap = LoadPixmap("../resources/textures/container.jpg")
+Local pixmap:TPixmap = LoadPixmap(PATH_PREFIX + "../resources/textures/container.jpg")
 If pixmap Then
 	pixmap = YFlipPixmap(pixmap)
 	glTexImage2D(GL_TEXTURE_2D, 0, GL_RGB, pixmap.width, pixmap.height, 0, GL_RGB, GL_UNSIGNED_BYTE, pixmap.pixels)
@@ -236,7 +236,7 @@ glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MIN_FILTER, GL_LINEAR)
 glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MAG_FILTER, GL_LINEAR)
 
 ' load image, create texture and generate mipmaps
-pixmap = LoadPixmap("../resources/textures/awesomeface.png")
+pixmap = LoadPixmap(PATH_PREFIX + "../resources/textures/awesomeface.png")
 If pixmap Then
 	pixmap = YFlipPixmap(pixmap)
 	glTexImage2D(GL_TEXTURE_2D, 0, GL_RGB, pixmap.width, pixmap.height, 0, GL_RGBA, GL_UNSIGNED_BYTE, pixmap.pixels)

+ 11 - 3
examples/learnopengl/shader.bmx

@@ -4,6 +4,12 @@ Import GLFW.GLFWOpenGL
 Import BRL.Matrix
 Import BRL.StandardIO
 
+?Not macos
+	Const PATH_PREFIX:String
+?macos
+	Const PATH_PREFIX:String = "../../../"
+?
+
 Type TShader
 
 	Field id:Int
@@ -15,12 +21,14 @@ Type TShader
 		Local geometryCode:String
 		
 		Try
-			vertexCode = LoadText(vertexPath)
-			fragmentCode = LoadText(fragmentPath)
+			vertexCode = LoadText(PATH_PREFIX + vertexPath)
+			fragmentCode = LoadText(PATH_PREFIX + fragmentPath)
 			If geometryPath Then
-				geometryCode = LoadText(geometryPath)
+				geometryCode = LoadText(PATH_PREFIX + geometryPath)
 			End If
 		Catch e:TStreamReadException
+		Print vertexPath
+		Print CurrentDir()
 			Print "ERROR::SHADER::FILE_NOT_SUCCESFULLY_READ"
 		End Try
 		

+ 2 - 0
glfw.mod/common.bmx

@@ -24,6 +24,8 @@ SuperStrict
 ?linux
 Import "-ldl"
 Import "-lX11"
+?macos
+Import "-framework IOKit"
 ?
 
 Import "source.bmx"

+ 6 - 1
glfw.mod/source.bmx

@@ -25,7 +25,12 @@ Import "glfw/include/*.h"
 Import "glfw/deps/*.h"
 
 ?macos
+Import "glfw/src/cocoa_init.m"
+Import "glfw/src/cocoa_joystick.m"
+Import "glfw/src/cocoa_monitor.m"
 Import "glfw/src/cocoa_time.c"
+Import "glfw/src/cocoa_window.m"
+Import "glfw/src/nsgl_context.m"
 ?
 Import "glfw/src/context.c"
 Import "glfw/src/egl_context.c"
@@ -36,6 +41,7 @@ Import "glfw/src/init.c"
 Import "glfw/src/input.c"
 ?linux
 Import "glfw/src/linux_joystick.c"
+Import "glfw/src/posix_time.c"
 ?
 Import "glfw/src/monitor.c"
 'Import "glfw/src/null_init.c"
@@ -45,7 +51,6 @@ Import "glfw/src/monitor.c"
 Import "glfw/src/osmesa_context.c"
 ?linux Or macos
 Import "glfw/src/posix_thread.c"
-Import "glfw/src/posix_time.c"
 ?
 Import "glfw/src/vulkan.c"
 ?win32