Так что я был бы благодарен, если бы вы указали мне некоторые уроки для этого
Вам необходимо скачать Microsoft DirectX SDK .
В дополнение к этому, вы должны попробовать NVidia SDK .
Вы также можете попробовать ATI SDK . Изучите их всех.
В дополнение к ним ... есть несколько книг по OpenGL: "Красная книга" , "Синяя книга" , Оранжевая книга . "Компьютерная графика с использованием OpenGL" от Фрэнсиса Хилла также очень хороша.
Получите эту информацию и начните читать.
как реально встроить эффекты в 3D игру
Этот вопрос слишком широкий. Существуют световые эффекты, системы частиц, эффекты постобработки, физика (которые также являются эффектами), и даже анимация персонажей - это эффект. Неясно, о каких эффектах вы говорите.
Как вы думаете, лучше DirectX или OpenGL.
Они более или менее равны. Вы можете сделать то же самое в обоих из них. Попробуйте оба и выберите тот, который вам понравился больше. OpenGL лучше для игры и экспериментов (потому что вы можете легко нарисовать треугольник, не мешая с аппаратными буферами), доступный на большем количестве платформ, плюс GLSL лучше, чем HLSL (потому что он не «компилируется в сборку»). DirectX изначально ориентирован на производительность, доступен на XBox360, а 9-я версия была действительно хорошей. openGL более «абстрактный», а DirectX ближе к аппаратному.
Если бы вы могли использовать такие факторы, как простота, область использования, производительность, количество примеров и ресурсов и т. Д.
- Если вы хотите простоты, вы должны забыть о создании игрового движка. Вам придется многому научиться, если вы хотите заниматься 3D.
- DirectX и OpenGL используются для создания 3D-продуктов.
- Вы можете получить хорошую производительность как с DirectX, так и с OpenGL, а также получить низкую производительность, если не знаете, что делаете.
- У DirectX и OpenGL огромное количество примеров и книг - просто поищите их. Они не были сделаны вчера, поэтому достаточно информации уже доступно.
Вам нужно выбрать цель, выбрать платформу, выбрать свой API, исследовать доступные технологии и начать писать код. Интересно, «какой из них лучше» - пустая трата времени. 3D-знания и алгоритм одинаково применимы к обоим API.