lookid
> Хаггарти "Дискретная математика для программистов"
Это вы вообще загнули, какая дискретная математика :) для не старых пердунов :) я говорю хотя бы об основах CS, про "Дискретная математика для программистов" вообще молчу, не старые пердуны вам скажут:
anonym
>Я бы сказал, более жестко, если не освоил CS (Computer Science) с пониманием, к плюсам подходить крайне противопоказано, потому как будет больше мамкино шкодинье, а не программирование с пониманием, почему и как устроено все в плюсах (да и в С), но думаю после этих слов большинство просто отвалится, говорю это, потому что как минимум, прочитал полностью книги Прата по С и С++.
Только так и надо, чтобы не знать о минусах изучаемого предмета и постоянно не испытывать раздражения от гениальности тех или иных решений и планирования в целом. Если предмет воодушевляет и постоянно гонит различные вещества в кровь, то под таким "наркозом" и в розовых очках процесс пойдёт легче. Как сложно отстоять пять часов в очереди за справкой или колбасой, а пять часов проторчать с кием около ноуса или бильярда - да легко! А физически действия мало отличаются, всё также стоишь на месте и прожигаешь время. Психологическая накачка и незнание - сила!
Учу по книге Франка Луны.
Прочитал урок про инициализация куба, про что такое вершинный буфер и индексный все понятно, но там не очень понятно сказано что такое D3DXMATRIX и D3DXVECTOR3.
Я так понял что эта часть кода крутит кубик, но непонятно что означают параметры.
D3DXVECTOR3 position(0.0f, 0.0f, -5.0f);
D3DXVECTOR3 target(0.0f, 0.0f, 0.0f);
D3DXVECTOR3 up(0.0f, 1.0f, 0.0f);
D3DXMATRIX V;
D3DXMatrixLookAtLH(&V, &position, &target, &up);
что такое D3DXMatrixLookAtLH и за что отвечают 4 параметра, V, position, target и up?
Так надо не просто читать а сразу компилировать, запускать, менять параметры и смотреть что получится. Там сам увидишь, позицию чего изменяешь. Вполне возможно, что автор некой книги сам ни разу свой код на нормальной задаче не тестировал и пишет только его фрагменты чтобы не быть виноватым за его возможную неработоспособность:) Типа это не я ерунду написал, а вы чего-то недопоняли. Когда попытаешься собрать и запустить, тогда уточнишь список граблей.
Mikki
учти, что ты сейчас пытаешься разобраться в d3d9, который был выпущен в 2002. он был задизайнен несколько лучше, чем opengl того времени, но по современным меркам тоже ужасно. я бы рекомендовал начинать изучение хотя бы с d3d10/d3d11. примеры к ним ставятся вместе с любым современным directx sdk.
в большинстве областей программирования не имеет особого значения, когда выпущены книги, которыми ты руководствуешься (книги кормена и кнута, считай, вечны), однако, конкретно графика с начала 200х эволюционировала настолько сильно, что многие знания того времени сейчас совершенно бесполезны. среди отличий, например, у них вообще нет D3DXMatrixLookAtLH (равно как и всего остального d3dx мусора), поэтому тебе придётся самому подобные функции реализовать, поэтому и разобраться в них проще, чем с чёрным ящиком.
Mikki
> что такое D3DXMatrixLookAtLH и за что отвечают 4 параметра, V, position,
> target и up?
V - результат, матрица вида, которая заполняется.
position - координаты центра проекции камеры в мире,
target - координаты точки, куда должна смотреть камера, тоже заданы в мире
up - направление верха камеры (если ты наклонишь башку на бок, то направление верха твоей головы, то бишь воображаемая стрелка, торчащая из башки вверх, изменится, хотя ты продолжишь смотреть в туже точку).
Сама функция строит матрицу перевода координат из мира в систему, где начало координат - в центре проекций камеры, вектор target-position будет Z-осью, up - осью Y.
PS
Suslik, Представляешь я не нашел книг с нормальным объяснением по Directx 11, из всего того что есть самое понятное это книга Франка Луны и Станислава Горнакова, там самое понятное объяснение того что такое Directx и как все это дело работает.
0xBADCODE, спасибо, добавил в комментарии к проекту.
Первые 2 урока понял как и что работает, двигаюсь дальше.
0xBADCODE
> Пора начинать брать деньги за консультации ))
Только так тебя начнут слушать :)
Треугольники пошли
Это нормально что я сегодня целый божий день просидел читая книгу Франка Луны?
(это я к том что в детстве не заставишь читать а теперь не оторвешь от книги)
Mikki
> Треугольники пошли
сделай это на Direct3D11 без Vertex/IndexBuffer через SV_VertexID, так ты проработаешь сразу поглубже некоторые продвинутые вещи.
Andrey
> сделай это на Direct3D11 без Vertex/IndexBuffer через SV_VertexID
Можешь кинуть пример позырить, насколько это круче чем в OGL?
Andrey
> сделай это на Direct3D11 без Vertex/IndexBuffer через SV_VertexID, так ты
перейдёшь на следующий круг ада вдвое быстрее!
Mikki
> Suslik, Представляешь я не нашел книг с нормальным объяснением по Directx 11,
> из всего того что есть самое понятное это книга Франка Луны и Станислава
> Горнакова, там самое понятное объяснение того что такое Directx и как все это
> дело работает.
ты можешь сразу привыкать к тому, что в программировании графики книг либо нет, либо они безнадёжно устарели. по самым основам, может быть, книги какие-то есть, но чем более продвинутые техники, тем меньше вероятность, что кто-то для них уже написал книгу. изучай графику по статьям, а не по книгам.