Автор |
Сообщение |
|
|
Заголовок сообщения: |
Re: Quark: простейшее 3D |
|
|
WingLion писал(а): Так... для кодирования чего-то, наподобие Wolf3D, теперь не хватает только вывода звука... Еще подготовлю про освещение, и можно будет не только Wolf, но и Quake делать
[quote="WingLion"]Так... для кодирования чего-то, наподобие Wolf3D, теперь не хватает только вывода звука... [/quote] Еще подготовлю про освещение, и можно будет не только Wolf, но и Quake делать :)
|
|
|
|
Добавлено: Ср дек 28, 2011 12:12 |
|
|
|
|
|
Заголовок сообщения: |
Re: Quark: простейшее 3D |
|
|
Так... для кодирования чего-то, наподобие Wolf3D, теперь не хватает только вывода звука...
Так... для кодирования чего-то, наподобие Wolf3D, теперь не хватает только вывода звука... :)
|
|
|
|
Добавлено: Ср дек 28, 2011 04:19 |
|
|
|
|
|
Заголовок сообщения: |
Re: Quark: простейшее 3D |
|
|
Продолжаем. На очереди текстуры. Сначала под текстуру надо выделить место: Код: CREATE MyTexture[] 64 64 * CELLS ALLOT Текстуру надо чем-то заполнить. Например, полноцветным (24 бита на пиксел) bmp-файлом. Это можно сделать и без отдельной библиотеки для работы с bmp, учитывая то, что заголовок занимает 54 байта, а дальше идут данные. Например, вот так (имеется в виду, что у нас уже есть файл размером 64 на 64): Код: : LoadHishnik " avatar.bmp" OPEN TO HF-OUT HF-OUT MyTexture[] 54 READFILE HF-OUT MyTexture[] 64 64 * 3 * READFILE HF-OUT CLOSE ;
Идем дальше. Теперь надо текстуру правильно разместить в пространстве, ну и заодно в каких-то размерах (ведь не 64 на 64 же?). Для этого создаем текстурные координаты: Код: CREATE TexPoint0 0.0 F, 0.0 F, 0.0 F, CREATE TexPoint1 1.0 F, 0.0 F, 0.0 F, CREATE TexPoint2 1.0 F, 1.0 F, 0.0 F, CREATE TexPoint3 0.0 F, 1.0 F, 0.0 F,
Можно убедиться, что это координаты углов квадрата со стороной 1. Потом мы их будем использовать. Код: : PREPARE_TEXTURE GL_TEXTURE_2D GL_TEXTURE_MAG_FILTER GL_LINEAR glTexParameteri GL_TEXTURE_2D GL_TEXTURE_MIN_FILTER GL_LINEAR glTexParameteri
GL_TEXTURE_2D 0 3 64 64 0 GL_RGB GL_UNSIGNED_BYTE MyTexture[] glTexImage2D ;
Вот тут, в слове PREPARE_TEXTURE, мы описываем, что это все означает. Первые две строчки задают тип масштабирования. Это нужно затем, чтобы понять, что делать с текстурой, которую надо отобразить, к примеру, в 37 на 25 пикселов. Тут написано GL_LINEAR, что означает линейную интерполяцию. Дальше идет сложная функция glTexImage2D. У нее куча параметров. Можно заметить среди них размеры (64 64), и формат (GL_RGB GL_UNSIGNED_BYTE - то есть пикселы в формате RGB, каждый цвет - беззнаковый байт). Здесь проще сверяться с документацией. Наконец, задаем саму текстуру. Во-первых, разрешаем ее использование (GL_TEXTURE_2D glEnable). Потом нужно будет его запретить, а то она будет рисоваться везде. Во-вторых, рисуем фигуру, на которой и будет текстура, это GL_QUADS Код: : TEXTURE
GL_TEXTURE_2D glEnable
GL_QUADS glBegin TexPoint0 glTexCoord2dv TexPoint0 glVertex3dv TexPoint1 glTexCoord2dv TexPoint1 glVertex3dv TexPoint2 glTexCoord2dv TexPoint2 glVertex3dv TexPoint3 glTexCoord2dv TexPoint3 glVertex3dv glEnd GL_TEXTURE_2D glDisable ;
Теперь делаем копипаст из предыдущего примера, чтобы все это так же вращалось. Код: : SHOW-TEXTURE 0 0 500 500 glViewPort glPushMatrix
GL_DEPTH_TEST glEnable GL_DEPTH_BUFFER_BIT glClear
GL_LIGHTING glEnable GL_LIGHT0 glEnable GL_LIGHT1 glEnable GL_COLOR_MATERIAL glEnable GL_LINE_SMOOTH glEnable
0 0x7FFFFFFF 0 glColor3i
NX F@ ROTATEANGLE SF! 1.0 glX SF! 0.0 glY SF! 0.0 glZ SF! 3DROTATE
NY F@ ROTATEANGLE SF! // -120 0.0 glX SF! 1.0 glY SF! 0.0 glZ SF! 3DROTATE
NZ F@ ROTATEANGLE SF! // 100 0.0 glX SF! 0.0 glY SF! 1.0 glZ SF! 3DROTATE
// начинается текстура: // линии координат по трем осям
GL_LINES glBegin Point1 glVertex3dv Point2 glVertex3dv glEnd GL_LINES glBegin Point3 glVertex3dv Point4 glVertex3dv glEnd GL_LINES glBegin Point5 glVertex3dv Point6 glVertex3dv glEnd
0x7FFFFFFF DUP DUP glColor3i
// рисуем
PREPARE_TEXTURE
TEXTURE
glPopMatrix
;
' SHOW-TEXTURE TO 3D У меня, с учетом добавленной картинки, крутится вот такой оптимистичный кошак Вложение:
quark9.gif [ 50.4 Кб | Просмотров: 21427 ]
Продолжаем. На очереди текстуры.
Сначала под текстуру надо выделить место:
[code]CREATE MyTexture[] 64 64 * CELLS ALLOT[/code]
Текстуру надо чем-то заполнить. Например, полноцветным (24 бита на пиксел) bmp-файлом. Это можно сделать и без отдельной библиотеки для работы с bmp, учитывая то, что заголовок занимает 54 байта, а дальше идут данные. Например, вот так (имеется в виду, что у нас уже есть файл размером 64 на 64):
[code]: LoadHishnik " avatar.bmp" OPEN TO HF-OUT HF-OUT MyTexture[] 54 READFILE HF-OUT MyTexture[] 64 64 * 3 * READFILE HF-OUT CLOSE ; [/code]
Идем дальше. Теперь надо текстуру правильно разместить в пространстве, ну и заодно в каких-то размерах (ведь не 64 на 64 же?). Для этого создаем текстурные координаты:
[code]CREATE TexPoint0 0.0 F, 0.0 F, 0.0 F, CREATE TexPoint1 1.0 F, 0.0 F, 0.0 F, CREATE TexPoint2 1.0 F, 1.0 F, 0.0 F, CREATE TexPoint3 0.0 F, 1.0 F, 0.0 F, [/code]
Можно убедиться, что это координаты углов квадрата со стороной 1. Потом мы их будем использовать.
[code] : PREPARE_TEXTURE GL_TEXTURE_2D GL_TEXTURE_MAG_FILTER GL_LINEAR glTexParameteri GL_TEXTURE_2D GL_TEXTURE_MIN_FILTER GL_LINEAR glTexParameteri
GL_TEXTURE_2D 0 3 64 64 0 GL_RGB GL_UNSIGNED_BYTE MyTexture[] glTexImage2D ; [/code]
Вот тут, в слове PREPARE_TEXTURE, мы описываем, что это все означает. Первые две строчки задают тип масштабирования. Это нужно затем, чтобы понять, что делать с текстурой, которую надо отобразить, к примеру, в 37 на 25 пикселов. Тут написано GL_LINEAR, что означает линейную интерполяцию.
Дальше идет сложная функция glTexImage2D. У нее куча параметров. Можно заметить среди них размеры (64 64), и формат (GL_RGB GL_UNSIGNED_BYTE - то есть пикселы в формате RGB, каждый цвет - беззнаковый байт). Здесь проще сверяться с документацией.
Наконец, задаем саму текстуру. Во-первых, разрешаем ее использование (GL_TEXTURE_2D glEnable). Потом нужно будет его запретить, а то она будет рисоваться везде. Во-вторых, рисуем фигуру, на которой и будет текстура, это GL_QUADS
[code]
: TEXTURE
GL_TEXTURE_2D glEnable
GL_QUADS glBegin TexPoint0 glTexCoord2dv TexPoint0 glVertex3dv TexPoint1 glTexCoord2dv TexPoint1 glVertex3dv TexPoint2 glTexCoord2dv TexPoint2 glVertex3dv TexPoint3 glTexCoord2dv TexPoint3 glVertex3dv glEnd GL_TEXTURE_2D glDisable ; [/code]
Теперь делаем копипаст из предыдущего примера, чтобы все это так же вращалось.
[code]: SHOW-TEXTURE 0 0 500 500 glViewPort glPushMatrix
GL_DEPTH_TEST glEnable GL_DEPTH_BUFFER_BIT glClear
GL_LIGHTING glEnable GL_LIGHT0 glEnable GL_LIGHT1 glEnable GL_COLOR_MATERIAL glEnable GL_LINE_SMOOTH glEnable
0 0x7FFFFFFF 0 glColor3i
NX F@ ROTATEANGLE SF! 1.0 glX SF! 0.0 glY SF! 0.0 glZ SF! 3DROTATE
NY F@ ROTATEANGLE SF! // -120 0.0 glX SF! 1.0 glY SF! 0.0 glZ SF! 3DROTATE
NZ F@ ROTATEANGLE SF! // 100 0.0 glX SF! 0.0 glY SF! 1.0 glZ SF! 3DROTATE
// начинается текстура: // линии координат по трем осям
GL_LINES glBegin Point1 glVertex3dv Point2 glVertex3dv glEnd GL_LINES glBegin Point3 glVertex3dv Point4 glVertex3dv glEnd GL_LINES glBegin Point5 glVertex3dv Point6 glVertex3dv glEnd
0x7FFFFFFF DUP DUP glColor3i
// рисуем
PREPARE_TEXTURE
TEXTURE
glPopMatrix
;
' SHOW-TEXTURE TO 3D[/code]
У меня, с учетом добавленной картинки, крутится вот такой оптимистичный кошак :) [attachment=0]quark9.gif[/attachment]
|
|
|
|
Добавлено: Ср дек 28, 2011 01:03 |
|
|
|
|
|
Заголовок сообщения: |
Re: Quark: простейшее 3D |
|
|
Гость писал(а): Это реализовано не только в Quark Форте А речи об эксклюзивности вообще не идет. Гость писал(а): и "мозги" тут ни причём Именно мозги и нужны. Без понимания того, как реализуется графика, ничего не будет. Хоть десять трансляторов Форта скачай. Гость писал(а): а разбираться можно используя готовые исходники на Форт языке и конечно грамотную книжку по OpenGL (для "прояснения" и "уяснения" тонкостей использования) Нет. На первом месте грамотная книжка, а вот для прояснения можно и Форт. И учить по книжке надо не тонкости использования, а само использование, начиная с основ.
[quote="Гость"]Это реализовано не только в Quark Форте [/quote] А речи об эксклюзивности вообще не идет. [quote="Гость"]и "мозги" тут ни причём [/quote] Именно мозги и нужны. Без понимания того, как реализуется графика, ничего не будет. Хоть десять трансляторов Форта скачай. [quote="Гость"]а разбираться можно используя готовые исходники на Форт языке и конечно грамотную книжку по OpenGL (для "прояснения" и "уяснения" тонкостей использования)[/quote] Нет. На первом месте грамотная книжка, а вот для прояснения можно и Форт. И учить по книжке надо не тонкости использования, а само использование, начиная с основ.
|
|
|
|
Добавлено: Вт дек 27, 2011 20:20 |
|
|
|
|
|
Заголовок сообщения: |
Re: Quark: простейшее 3D |
|
|
Хищник писал(а): Можно, конечно, потыкаться по ссылкам в надежде, что где-то это уже есть... правда, это перетекает в глобальную проблему интернет-поиска: "а где бы скачать себе мозгов?" :) Это реализовано не только в Quark Форте и "мозги" тут ни причём а разбираться можно используя готовые исходники на Форт языке и конечно грамотную книжку по OpenGL (для "прояснения" и "уяснения" тонкостей использования)
[quote="Хищник"] Можно, конечно, потыкаться по ссылкам в надежде, что где-то это уже есть... правда, это перетекает в глобальную проблему интернет-поиска: "а где бы скачать себе мозгов?" :)[/quote]
Это реализовано не только в Quark Форте и "мозги" тут ни причём а разбираться можно используя готовые исходники на Форт языке и конечно грамотную книжку по OpenGL (для "прояснения" и "уяснения" тонкостей использования)
|
|
|
|
Добавлено: Вт дек 27, 2011 20:16 |
|
|
|
|
|
Заголовок сообщения: |
Re: Quark: простейшее 3D |
|
|
Гость писал(а): Вроде были для Форт систем уроки (Forth+OpenGL в google) также можно брать, наверное, из примеров BigForth? Win32Forth ... и наверное отдельные и существующие в проектах графические наработки? А смысл? Разобраться надо с OpenGL, а не с Фортом. На 95% программа будет состоять из вызовов функций OpenGL, и надо просто научиться делать это в нужном порядке для достижения требуемого эффекта. Можно, конечно, потыкаться по ссылкам в надежде, что где-то это уже есть... правда, это перетекает в глобальную проблему интернет-поиска: "а где бы скачать себе мозгов?"
[quote="Гость"]Вроде были для Форт систем уроки (Forth+OpenGL в google) также можно брать, наверное, из примеров BigForth? Win32Forth ... и наверное отдельные и существующие в проектах графические наработки?[/quote] А смысл? Разобраться надо с OpenGL, а не с Фортом. На 95% программа будет состоять из вызовов функций OpenGL, и надо просто научиться делать это в нужном порядке для достижения требуемого эффекта. Можно, конечно, потыкаться по ссылкам в надежде, что где-то это уже есть... правда, это перетекает в глобальную проблему интернет-поиска: "а где бы скачать себе мозгов?" :)
|
|
|
|
Добавлено: Вт дек 27, 2011 19:52 |
|
|
|
|
|
Заголовок сообщения: |
Re: Quark: простейшее 3D |
|
|
WingLion писал(а): Только учебники обычно не дают примеров кода на форте и не объясняют, как использовать на форте те же константы... Поэтому, минимальный ликбез необходим. Я для начала листал достаточно старую книгу Краснова по программированию OpenGL на Дельфи и переписывал примеры оттуда. Форт сам по себе не очень нужен, оттуда нужен порядок вызова функций, а подключаются они все равно через GETPROCADDRESS. Некоторая сложность с передачей чисел с плавающей точкой - в кварке они на стеке сопроцессора, а в OpenGL должны лежать на стеке параметров. Но это нивелируется тем, что в самой библиотеке рекомендуется передавать не параметры, а указатель на массив с ними. Другая тонкость - иногда функции в dll отличаются от функций, как они написаны в книгах. Отличие в добавленной букве A или U (ASCII/Unicode, если функция работает со строками).
[quote="WingLion"]Только учебники обычно не дают примеров кода на форте и не объясняют, как использовать на форте те же константы... Поэтому, минимальный ликбез необходим.[/quote] Я для начала листал достаточно старую книгу Краснова по программированию OpenGL на Дельфи и переписывал примеры оттуда. Форт сам по себе не очень нужен, оттуда нужен порядок вызова функций, а подключаются они все равно через GETPROCADDRESS. Некоторая сложность с передачей чисел с плавающей точкой - в кварке они на стеке сопроцессора, а в OpenGL должны лежать на стеке параметров. Но это нивелируется тем, что в самой библиотеке рекомендуется передавать не параметры, а указатель на массив с ними. Другая тонкость - иногда функции в dll отличаются от функций, как они написаны в книгах. Отличие в добавленной букве A или U (ASCII/Unicode, если функция работает со строками).
|
|
|
|
Добавлено: Вт дек 27, 2011 19:48 |
|
|
|
|
|
Заголовок сообщения: |
Re: Quark: простейшее 3D |
|
|
WingLion писал(а): Хищник писал(а): Это уже проще по какому-нибудь учебнику, поскольку там некоторые вещи нетривиальны. Только учебники обычно не дают примеров кода на форте и не объясняют, как использовать на форте те же константы... Поэтому, минимальный ликбез необходим. Вроде были для Форт систем уроки (Forth+OpenGL в google) также можно брать, наверное, из примеров BigForth? Win32Forth ... и наверное отдельные и существующие в проектах графические наработки?
[quote="WingLion"][quote="Хищник"]Это уже проще по какому-нибудь учебнику, поскольку там некоторые вещи нетривиальны.[/quote]
Только учебники обычно не дают примеров кода на форте и не объясняют, как использовать на форте те же константы... Поэтому, минимальный ликбез необходим.[/quote]
Вроде были для Форт систем уроки (Forth+OpenGL в google) также можно брать, наверное, из примеров BigForth? Win32Forth ... и наверное отдельные и существующие в проектах графические наработки?
|
|
|
|
Добавлено: Вт дек 27, 2011 19:41 |
|
|
|
|
|
Заголовок сообщения: |
Re: Quark: простейшее 3D |
|
|
Хищник писал(а): Это уже проще по какому-нибудь учебнику, поскольку там некоторые вещи нетривиальны. Только учебники обычно не дают примеров кода на форте и не объясняют, как использовать на форте те же константы... Поэтому, минимальный ликбез необходим.
[quote="Хищник"]Это уже проще по какому-нибудь учебнику, поскольку там некоторые вещи нетривиальны.[/quote]
Только учебники обычно не дают примеров кода на форте и не объясняют, как использовать на форте те же константы... Поэтому, минимальный ликбез необходим.
|
|
|
|
Добавлено: Вт дек 27, 2011 19:01 |
|
|
|
|
|
Заголовок сообщения: |
Re: Quark: простейшее 3D |
|
|
WingLion писал(а): Было бы неплохо, чтобы каждая константа была с описанием, о том, для чего она и что делает, а то гадать трудновато. Это уже проще по какому-нибудь учебнику, поскольку там некоторые вещи нетривиальны. Я писал константы в процессе освоения учебника по OpenGL, чтобы получались те примеры.
[quote="WingLion"]Было бы неплохо, чтобы каждая константа была с описанием, о том, для чего она и что делает, а то гадать трудновато.[/quote] Это уже проще по какому-нибудь учебнику, поскольку там некоторые вещи нетривиальны. Я писал константы в процессе освоения учебника по OpenGL, чтобы получались те примеры.
|
|
|
|
Добавлено: Вт дек 27, 2011 18:45 |
|
|
|
|
|
Заголовок сообщения: |
Re: Quark: простейшее 3D |
|
|
Хищник писал(а): В http://www.msyst.ru/quark.pdf в конце есть таблица констант, которые реализованы как слова (упс, список в документации почему-то неполон, реально есть больше). Было бы неплохо, чтобы каждая константа была с описанием, о том, для чего она и что делает, а то гадать трудновато.
[quote="Хищник"] В http://www.msyst.ru/quark.pdf в конце есть таблица констант, которые реализованы как слова (упс, список в документации почему-то неполон, реально есть больше).[/quote]
Было бы неплохо, чтобы каждая константа была с описанием, о том, для чего она и что делает, а то гадать трудновато.
|
|
|
|
Добавлено: Вт дек 27, 2011 18:29 |
|
|
|
|
|
Заголовок сообщения: |
Re: Quark: простейшее 3D |
|
|
WingLion писал(а): Хм... a GL_POLYGONS ... хнык... нихт арбайтен... Как оказалось по документации на OpenGL - и не должен. Оно называется GL_POLYGON, и в кварке есть. В http://www.msyst.ru/quark.pdf в конце есть таблица констант, которые реализованы как слова (упс, список в документации почему-то неполон, реально есть больше).
[quote="WingLion"]Хм... a GL_POLYGONS ... хнык... нихт арбайтен...[/quote] Как оказалось по документации на OpenGL - и не должен. Оно называется GL_POLYGON, и в кварке есть. В http://www.msyst.ru/quark.pdf в конце есть таблица констант, которые реализованы как слова (упс, список в документации почему-то неполон, реально есть больше).
|
|
|
|
Добавлено: Вт дек 27, 2011 16:18 |
|
|
|
|
|
Заголовок сообщения: |
Re: Quark: простейшее 3D |
|
|
WingLion писал(а): Тупит. Вместо ожидаемого прямо(четырех)угольника нарисовал какой-то непонятный "флаг вражеской наружности" Да, вершины надо обходить в каком-то определенном направлении - по часовой стрелке или против часовой. Желательно сразу с этим определиться, потому что потом одна из сторон будет лицевой. WingLion писал(а): Хм... a GL_POLYGONS ... хнык... нихт арбайтен... Добавлю. WingLion писал(а): 1. Нужна (видимо, для перемещения внутри сцены) функция glTranslatef Есть такое, работает. Сейчас пример сделаю. WingLion писал(а): 2. Нужен пример, как рисовать на полигонах текстуры? (из *.bmp файлов) Аналогично. WingLion писал(а): цвета переливчатые получаются однако Правильно, согласно программе, каждая вершина своего цвета получается. Вот оно и строит переходы цветов. OpenGL организован как машина состояний. Цвет не просто влияет на следующее действие, а задается, и используется всеми последующими построениями, которым он вообще нужен. Такой подход приятен тем, что в движке OpenGL есть еще масса параметров, которые применяются автоматически, поскольку мы их не меняли. Когда мы до них доберемся, это изменит картинку, но даже без явного изменения они работают.
[quote="WingLion"]Тупит. Вместо ожидаемого прямо(четырех)угольника нарисовал какой-то непонятный "флаг вражеской наружности"[/quote] Да, вершины надо обходить в каком-то определенном направлении - по часовой стрелке или против часовой. Желательно сразу с этим определиться, потому что потом одна из сторон будет лицевой. [quote="WingLion"]Хм... a GL_POLYGONS ... хнык... нихт арбайтен...[/quote] Добавлю. [quote="WingLion"]1. Нужна (видимо, для перемещения внутри сцены) функция glTranslatef[/quote] Есть такое, работает. Сейчас пример сделаю.
[quote="WingLion"]2. Нужен пример, как рисовать на полигонах текстуры? (из *.bmp файлов)[/quote] Аналогично. [quote="WingLion"]цвета переливчатые получаются однако [/quote] Правильно, согласно программе, каждая вершина своего цвета получается. Вот оно и строит переходы цветов.
OpenGL организован как машина состояний. Цвет не просто влияет на следующее действие, а задается, и используется всеми последующими построениями, которым он вообще нужен. Такой подход приятен тем, что в движке OpenGL есть еще масса параметров, которые применяются автоматически, поскольку мы их не меняли. Когда мы до них доберемся, это изменит картинку, но даже без явного изменения они работают.
|
|
|
|
Добавлено: Вт дек 27, 2011 12:55 |
|
|
|
|
|
Заголовок сообщения: |
Re: Quark: простейшее 3D |
|
|
А теперь начинаются хотелки: 1. Нужна (видимо, для перемещения внутри сцены) функция glTranslatefВ объявлениях (в примере) она вроде, есть, а как ее использовать - не ясно. 2. Нужен пример, как рисовать на полигонах текстуры? (из *.bmp файлов) 3. Окраска полигонов... вроде разобрался по предыдущей ссылке: где-то вначале: Код: : Gl_GREEN 0 0x7FFFFFFF 0 glColor3i ;
: Gl_RED 0x7FFFFFFF 0 0 glColor3i ;
: Gl_BLUE 0 0 0x7FFFFFFF glColor3i ; в отрисовке сцены: Код: GL_TRIANGLES glBegin Gl_GREEN Point5 glVertex3dv Gl_RED Point6 glVertex3dv Gl_BLUE Point7 glVertex3dv glEnd цвета переливчатые получаются однако
А теперь начинаются хотелки:
1. Нужна (видимо, для перемещения внутри сцены) функция [b]glTranslatef[/b]
В объявлениях (в примере) она вроде, есть, а как ее использовать - не ясно.
2. Нужен пример, как рисовать на полигонах текстуры? (из *.bmp файлов)
3. Окраска полигонов... вроде разобрался по предыдущей ссылке:
где-то вначале: [code] : Gl_GREEN 0 0x7FFFFFFF 0 glColor3i ;
: Gl_RED 0x7FFFFFFF 0 0 glColor3i ;
: Gl_BLUE 0 0 0x7FFFFFFF glColor3i ;[/code]
в отрисовке сцены: [code] GL_TRIANGLES glBegin Gl_GREEN Point5 glVertex3dv Gl_RED Point6 glVertex3dv Gl_BLUE Point7 glVertex3dv glEnd[/code]
цвета переливчатые получаются однако ;)
|
|
|
|
Добавлено: Пн дек 26, 2011 22:43 |
|
|
|
|
|
Заголовок сообщения: |
Re: Quark: простейшее 3D |
|
|
Ссылочка в тему - http://pmg.org.ru/nehe/index.html - уроки по OpenGL - нефортовые, но на форт их в принципе перевести можно оттуда и словечки новые подцепил...
Ссылочка в тему - http://pmg.org.ru/nehe/index.html - уроки по OpenGL - нефортовые, но на форт их в принципе перевести можно ;) оттуда и словечки новые подцепил...
|
|
|
|
Добавлено: Пн дек 26, 2011 22:12 |
|
|
|
|