Game в OpenGL на FASM

Тема в разделе "WASM.OpenGL", создана пользователем Hotwire, 3 мар 2007.

  1. _DEN_

    _DEN_ DEN

    Публикаций:
    0
    Регистрация:
    8 окт 2003
    Сообщения:
    5.383
    Адрес:
    Йобастан
    Hotwire

    Вообщем-то ничего удивительного ;) Добавь второй кубик и попробуй честно посчитать столкновения между ними.

    Не думаю что такое где-то есть. Возьми С++-сные и сделай из них фасмовые с помощью search & replace.
     
  2. Hotwire

    Hotwire New Member

    Публикаций:
    0
    Регистрация:
    13 янв 2007
    Сообщения:
    64
    А где сишные инклюды валяются?
     
  3. _DEN_

    _DEN_ DEN

    Публикаций:
    0
    Регистрация:
    8 окт 2003
    Сообщения:
    5.383
    Адрес:
    Йобастан
    Hotwire

    http://oss.sgi.com/projects/ogl-sample/registry/
     
  4. Hotwire

    Hotwire New Member

    Публикаций:
    0
    Регистрация:
    13 янв 2007
    Сообщения:
    64
    Не стал тянуть с SGI, в NVidia SDK тоже инклюды есть для OpenGL'а.
     
  5. _DEN_

    _DEN_ DEN

    Публикаций:
    0
    Регистрация:
    8 окт 2003
    Сообщения:
    5.383
    Адрес:
    Йобастан
    Hotwire

    Вид сбоку ;)
     
  6. S_Alex

    S_Alex Alex

    Публикаций:
    0
    Регистрация:
    27 авг 2004
    Сообщения:
    561
    Адрес:
    Ukraine
    Тут есть .inc-ки и чуть-чуть кода.
     
  7. Hotwire

    Hotwire New Member

    Публикаций:
    0
    Регистрация:
    13 янв 2007
    Сообщения:
    64
    Ваша взяла! Движок разрабатывать - полный геморой, а особенно на асме. Какой движок посоветуете для новичка?
     
  8. Hotwire

    Hotwire New Member

    Публикаций:
    0
    Регистрация:
    13 янв 2007
    Сообщения:
    64
    Вопрос несколько не по теме. Игрался я со смешиванием, а напоролся на баг. Нарисовал квадрат, натянул на него текстуру, затем подвинулся поближе, включил смешивание, нарисовал треугольник, отключил смешивание. Перед началом рисования треуголька текстурирование было отключено, а потом опять включено. Смешивает нормально, а вот текстура посинела. Шо делать? Цвет текстуры изменяется по цвету последней вершины. Изначально была синяя, потому и посинела, когда сделал красной покраснела и т.д.
     
  9. _DEN_

    _DEN_ DEN

    Публикаций:
    0
    Регистрация:
    8 окт 2003
    Сообщения:
    5.383
    Адрес:
    Йобастан
    glColor3f ?
     
  10. Booster

    Booster New Member

    Публикаций:
    0
    Регистрация:
    26 ноя 2004
    Сообщения:
    4.860
    Есть графические двиги, в том числе бесплатные - Irrlicht, ODE и т.д. Но никогда ими не пользовался, что к чему не знаю. Знаю только что Irrlicht - отстой, современные фичи не использует, отсюда очень не оптимален, годиться только для обучения. ODE - объектно ориентированный, можно ли его юзать на асме или только на С++ не знаю.

    Но простенький граф двиг IMHO можно и самому сделать, правда только в DirectX. Так как многое там уже сделано, например проблемы загрузки и отображения моделей, скелетная анимация и т.д.
    В OpenGL конечно надо быть семи пядей волбу чтобы это всё сделать.
    IMHO также большой интерес представляют, физические двиги.
    Я пробовал бесплатные: Tokamak и Newton. Newton либа stdcall, на любом языке можно использовать, но есть баги, например объекты при большой скорости могут проходить свозь друг друга.
    В Tokamak вроде багов поменьше, но в С++ классах.

    Вообще тебе прямая дорога на http://www.gamedev.ru
    Я там форум тоже посещаю.
     
  11. Hotwire

    Hotwire New Member

    Публикаций:
    0
    Регистрация:
    13 янв 2007
    Сообщения:
    64
    К _DEN_
    При рисовании треугольника использовал glColor3f.

    К Booster
    Где движки типа Tokamak или Newton cкачать можно, а также SDK к ним, если они конечно существуют?
     
  12. Hotwire

    Hotwire New Member

    Публикаций:
    0
    Регистрация:
    13 янв 2007
    Сообщения:
    64
    Роясь в чужих исходниках(сам знаю, что читать чужие сорсы плохо) нашел вызовы GLU'шных функций, с помощью которых рисуют некоторые геометрические примитивы(цилиндр,например). Как их юзать?
     
  13. Y_Mur

    Y_Mur Active Member

    Публикаций:
    0
    Регистрация:
    6 сен 2006
    Сообщения:
    2.494
    Hotwire
    читать чужие сорцы - не хорошо... - а ооочень хорошо!
    Собственно учиться на чужих ошибках часто лучше чем на своих ;)
    Загляни сюда:
    http://www.wasm.ru/forum/viewtopic.php?id=19863
    http://www.firststeps.ru/mfc/opengl/opengl1.html
     
  14. _DEN_

    _DEN_ DEN

    Публикаций:
    0
    Регистрация:
    8 окт 2003
    Сообщения:
    5.383
    Адрес:
    Йобастан
    Hotwire

    OpenGL это стейт-машина. Если ты задал glColor3f, то ты задал стейт. Все последующие вертексы будут брать этот цвет до тех пор, пока ты новый цвет не задашь.
     
  15. Hotwire

    Hotwire New Member

    Публикаций:
    0
    Регистрация:
    13 янв 2007
    Сообщения:
    64
    К _DEN_
    С колором разобрался, работает как часы.
    К Y_Mur
    Поставлю вопрос ребром. Как мне нарисать цилиндр, и как его текстурировать?
     
  16. _DEN_

    _DEN_ DEN

    Публикаций:
    0
    Регистрация:
    8 окт 2003
    Сообщения:
    5.383
    Адрес:
    Йобастан
    Hotwire

    Если по-школьному, то gluCylinder. Если по ПТУ-шному, то генеришь вертексы сам. Циллиндрическая система координат тебе в руки. Если по-паццаноффски, то пишешь свой экспорт плагин к максу или парсер 3DS.
     
  17. Booster

    Booster New Member

    Публикаций:
    0
    Регистрация:
    26 ноя 2004
    Сообщения:
    4.860
    Hotwire
    Конечно существуют.
    Набираю в яндексе "Физические движок Newton, Tokamak"
    И получаю первым в списке
    www.interface.ru/home.asp?artId=2650 - Game development: Физика в играх / Возможности существующих движков

    Как раз почитаешь о них, у знаешь где взять.

    _DEN_
    IMHO самый кульный способ, мозги заставляет работать.
     
  18. Hotwire

    Hotwire New Member

    Публикаций:
    0
    Регистрация:
    13 янв 2007
    Сообщения:
    64
    Давай по-школьному. Какие параметры функции gluCylinder? И как это чудо текстурировать?

    По ПТУ-шному переходить в полярные координаты?

    Плагин есть? Это по-паццаноффски.
     
  19. Booster

    Booster New Member

    Публикаций:
    0
    Регистрация:
    26 ноя 2004
    Сообщения:
    4.860
    Hotwire
    Какие полярные?
    Ты окружность чертить умеешь? А Z координату менять в цикле?

    Когда-то я даже библу писал, для создания разных фигур, и разной триангуляцией.

    IMHO ничего сложного.

    Советую размять мозги, развивающийся флаг например сделать и т.д.
     
  20. _DEN_

    _DEN_ DEN

    Публикаций:
    0
    Регистрация:
    8 окт 2003
    Сообщения:
    5.383
    Адрес:
    Йобастан
    Booster

    Детский сад это, а не кульный способ. Ни один крупный игровой проект не занимается генерацией геометрии на лету. Только экспорт из редактора.

    Hotwire

    У тебя МСДН есть? ;)

    Код (Text):
    1. The gluNewQuadric function creates a quadric object.
    2.  
    3. GLUquadricObj* gluNewQuadric( void );
    4.  
    5.  
    6. The gluQuadricTexture function specifies whether quadrics are to be textured.
    7.  
    8. void gluQuadricTexture(GLUquadricObj *quadObject, GLboolean textureCoords);
    9.  
    10.  
    11. The gluCylinder function draws a cylinder.
    12.  
    13. void gluCylinder(GLUquadricObj *qobj, GLdouble baseRadius, GLdouble topRadius, GLdouble height, GLint slices, GLint stacks);