[問題] OpenGL in C++

看板MacDev作者 (電腦真耗錢)時間14年前 (2010/06/11 18:11), 編輯推噓3(3015)
留言18則, 4人參與, 最新討論串1/1
大家好, 最近一直上來問問題, 真是勞煩大家了 小弟現在想要把某個之前用C++寫的畫介面程式(用OpenGL) , 放到Mac上來, 目前的作法是這樣: 1. 用 Object-C 開出一個Cocoa AP 2. 把 C++的介面程式弄成dylib, 由Cocoa AP 動態連結 但是遇到一個問題, 就是, OpenGL的部份是在C++裡面呼叫, 所以無法直接使用NSOpenGL等class, 之前再win32的作法是宣告一個render context, 然後將參數設好, 利用WGL提供的API去連結windows的device context, 之後用OpenGL的函式, 他就知道要話到哪裡去... 但是在Mac上面, 我查詢到的AGL (for Carbon) 好像不能用, CGL(Core OpenGL)還沒搞清楚怎麼用, 請前輩能夠提點一下, 怎麼樣讓 C++內的OpenGL 函式和 Mac的device連結起來?? ps. 之所以那麼麻煩不用Object-C作, 是因為C++那一段東西是跨平台的~ 謝謝大家看我這麼落落常一大段XD -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 124.219.26.209

06/12 10:02, , 1F
include opengl framework?
06/12 10:02, 1F

06/13 15:51, , 2F
可是這樣如何在C++內呼叫?
06/13 15:51, 2F

06/13 17:16, , 3F
就#include <gl/glut.h>這樣叫進來啊 =_=
06/13 17:16, 3F

06/13 17:17, , 4F
另外,你之前寫的C++ code可以用Obj-C++包起來用
06/13 17:17, 4F

06/13 21:10, , 5F
樓上可能誤會, 我需要再C++內用NSOpenGLView的method
06/13 21:10, 5F

06/13 21:11, , 6F
C++那邊會包成dylib
06/13 21:11, 6F

06/13 21:12, , 7F
視窗部分目前想先用Cocoa試試看, 真的不行只好用glut
06/13 21:12, 7F

06/13 21:13, , 8F
小弟經驗很淺, 有錯請大家不吝惜指正, 謝謝大家
06/13 21:13, 8F

06/13 21:35, , 9F
基本上呢,你寫的C++部份應該是單純包括"GL繪圖"的code
06/13 21:35, 9F

06/13 21:36, , 10F
其他部份應該放在Obj-C++做出來的ObjC物件裡面
06/13 21:36, 10F

06/13 21:36, , 11F
剛剛話了一下我想表達的圖:http://tinyurl.com/29ha9rq
06/13 21:36, 11F

06/13 21:37, , 12F
由於某些因素, dylib部分是當使用者開啟app後才會從
06/13 21:37, 12F

06/13 21:37, , 13F
網路load dylib近來, 整個畫圖部分才會開始畫圖
06/13 21:37, 13F

06/13 21:38, , 14F
dylib部分幾乎是所有的功能, Cocoa視窗只是一個外殼
06/13 21:38, 14F

06/13 22:03, , 15F
由於C++部分是跨四個平台, 也希望盡量不要重寫
06/13 22:03, 15F

06/13 22:03, , 16F
XD所以才會變成這樣^^繼續google, 也希望有經驗的人幫忙
06/13 22:03, 16F

06/13 23:33, , 17F
06/13 23:33, 17F

06/14 00:13, , 18F
謝謝, 不過跟我要的方式不太一樣 (XD 我表達能力差 sorry)
06/14 00:13, 18F
文章代碼(AID): #1C4WlNd0 (MacDev)