![]() |
#61 |
Участник
|
|
|
![]() |
#62 |
Участник
|
Выкладываю программу на C++, которая выводит куб в основное окно Ax. Остается только найти 10 отличий с аксаптой.
|
|
![]() |
#63 |
Участник
|
|
|
![]() |
#64 |
Участник
|
Цитата:
Можно сравнить с точностью до значений возвращаемых функциями, может где всплывет глюк. glViewPort не нужен, без него должно работать. Интересно вот это: PHP код:
|
|
![]() |
#65 |
Участник
|
Вот, кое что подправил, ошибки должны в инфо выводиться, в инфо чисто, окно чёрное!
Lucky, твоя прога перезапустила винду при повторной попытке запуска ![]() Последний раз редактировалось Dronas; 29.11.2006 в 12:55. |
|
![]() |
#66 |
Участник
|
Цитата:
Опытным путем установлено: 1. Приложение на С выводит в главное окно Ax 2. Приложение на С выводит в окно главного меню Ax, но картинку видно только при закрытии окна (видимо Axapta затирает) 3. Приложение на С НЕ выводит в окно созданное пользователем. Что бы это могло значить? Вывод в компонент типа Window не проверял. |
|
![]() |
#67 |
Участник
|
|
|
![]() |
#68 |
Участник
|
Вывод есть, проверено, мне кажется у меня беда всё же с ClearColor
Запусти формочку из моего проекта. |
|
![]() |
#69 |
Участник
|
|
|
![]() |
#70 |
Участник
|
А это?
Есть одна засада, не плохо бы перезапустить машину после экспериментов с OpenGL. |
|
![]() |
#71 |
Участник
|
в
OpenGL_Initialize X++: ... //g_hWnd = Frame.hWnd(); g_hWnd = WinApi::findWindow("AxaptaClientClassName", ""); g_hWnd = WinApi::findWindowEx(g_hWnd, 0, "", ""); ... ![]() |
|
![]() |
#72 |
Участник
|
Цитата:
![]() А нарисовать что-нибудь получается или хотя бы в зеленый цвет покрасить. |
|
![]() |
#73 |
Участник
|
Во-во, контекст правильно не удалён, поэтому заново и не создаётся.
Цитата:
![]() Последний раз редактировалось Dronas; 29.11.2006 в 14:39. |
|
![]() |
#74 |
Участник
|
УРА, ЗАРАБОТАЛА!!!
Работает, но вот этот цирк мне не понятен
![]() X++: static int glClearColor(real red, real green, real blue, real alpha) { DLL _winApiDLL = new DLL("OPENGL32.dll"); DLLFunction _glClearColor = new DLLFunction(_winApiDLL, 'glClearColor'); COMVariant r = new COMVariant(); COMVariant g = new COMVariant(); COMVariant b = new COMVariant(); COMVariant a = new COMVariant(); r.float(red); g.float(green); b.float(blue); a.float(alpha); _glClearColor.returns(ExtTypes::void); _glClearColor.arg(ExtTypes::DWord, ExtTypes::DWord, ExtTypes::DWord, ExtTypes::DWord); return _glClearColor.call(r.int(), g.int(), b.int(), a.int()); } |
|
![]() |
#75 |
Участник
|
Вот так как было по-моему неправильно.
X++: _glClearColor.call(r.float(red), g.float(green), b.float(blue), a.float(alpha)); X++: return _glClearColor.call(r.int(), g.int(), b.int(), a.int()); |
|
![]() |
#76 |
Участник
|
Если float, то не будет, с интом вроде ничё.
|
|
![]() |
#77 |
Участник
|
Теперь встал вопрос, что на ней делать?
![]() |
|
![]() |
#78 |
Участник
|
Здесь советуют писать int, да будет так. Пусть это будет фича аксапты.
|
|
![]() |
#79 |
Участник
|
Оттеда и слямзено
![]() |
|
![]() |
#80 |
Участник
|
Всё, ужо и треугольники рисуются
![]() Интересно, шейдеры . . . |
|