Форум: "Игры";
Текущий архив: 2008.03.30;
Скачать: [xml.tar.bz2];
ВнизОсновы ODE Найти похожие ветки
← →
sayman (2007-01-12 22:41) [0]Я нашёл статью на геймдеве, называется она "Основы ODE" (GLScene), раз пять делал точь в точь как там написано, и после компиляции нажимаю я клавишу вперёд, и пишет какую-то ошибку.
У кого получилось, прошу прислать мне исходник. Заранее спасибо!
← →
@!!ex © (2007-01-12 23:18) [1]Какую то ошибку?
Так и пишет? "Произошла какая то ошибка!"
← →
Samarik (2007-01-12 23:29) [2]Пишет:
Project Project1.exe raised exeption class ElistError with message "List index of bounds(0)" . Process stopped. Use step or...
← →
sayman (2007-01-12 23:29) [3]И у мня тоже это пишет!
← →
@!!ex © (2007-01-13 00:13) [4]Ок.. Что за код выполняется при нажатии клавиши вперед, где описывается список и когда идет обращение к 0 элементу?
← →
MissingLink (2007-01-13 01:13) [5]Дайте ссылку!
← →
Боцман (2007-01-13 04:00) [6]По-моему с ODE проще разобраться по лодкиным демкам: http://lodka3d.narod.ru/demo/odedemos.html
К тому же не надо угадывать где чего разместить, а можно прямо в лодке всё расставить, а потом только загрузить.
← →
sayman (2007-01-13 12:22) [7]procedure TForm1.GLCadencer1Progress(Sender: TObject; const deltaTime,
newTime: Double);
begin
if IsKeyDown(VK_UP) then dBodyAddTorque(TGLODEDynamic(GLSphere1.Behaviours[0]).Body,-100,0,0);
if IsKeyDown(VK_LEFT) then dBodyAddForce(TGLODEDynamic(GLSphere1.Behaviours[0]).Body,-20,0,0);
if IsKeyDown(VK_RIGHT) then dBodyAddForce(TGLODEDynamic(GLSphere1.Behaviours[0]).Body,20,0,0);
GLODEManager1.Step(deltaTime);
end;
Вот код обработки нажатия клавиш, я его из той статьи скопировал.
По лодкиным демкам нихрена не понял, там на форме даже GLODEManager нет, а так не могу, я только начинающий. Так что будет лучше есле по меньше кода будет. Я уже весь нЭт облазил, про ОДЕ только одна эта статья, надо найти что-то человеческое.
:)
← →
@!!ex © (2007-01-14 01:02) [8]GLSphere1.Behaviours[0] - где заполняется??
← →
sayman (2007-01-14 14:15) [9]@!!ex, чё?
← →
@!!ex © (2007-01-14 18:29) [10]Очевидно, что ошибка возникает при обращение к списку GLSphere1.Behaviours[0].
Где в этот список добавляются элементы?
По умолчанию, как я понимаю, он пуст. Не удевительно, что при попытке вытащить из него элементы вылезает AV.
← →
sayman (2007-01-14 18:43) [11]не, он не пуст. А если у тя получилось, или вообще знаешь оде, то пришли мне демку. ПЛЗ:)
← →
@!!ex © (2007-01-14 18:54) [12]Ок. Закомментируй весь код и напиши вместо него:
procedure TForm1.GLCadencer1Progress(Sender: TObject; const deltaTime,
newTime: Double);
var
Test:TGLODEDynamic;
begin
Test:=TGLODEDynamic(GLSphere1.Behaviours[0]);
end;
Есть AV?
← →
sayman (2007-01-14 19:36) [13]@!!ex, нифига, всё то же и пишет
← →
@!!ex © (2007-01-14 19:39) [14]Что и требовалось доказать.
ОТкуда уверен, что список не пустой?
← →
sayman (2007-01-14 19:56) [15]каковато уже пустой, оно что каждый раз збиваеться!
← →
@!!ex © (2007-01-14 19:58) [16]
> sayman (14.01.07 19:56) [15]
Врядли. Может он где то чиститься?
Извини, но я у меня только догадки.
Никогда с ODE дел не имел и демки у меня нет.
← →
btest (2007-01-15 06:39) [17]test
Страницы: 1 вся ветка
Форум: "Игры";
Текущий архив: 2008.03.30;
Скачать: [xml.tar.bz2];
Память: 0.47 MB
Время: 0.042 c