Форум: "Игры";
Текущий архив: 2004.12.26;
Скачать: [xml.tar.bz2];
ВнизАналог Blitz3D Найти похожие ветки
← →
Xerx © (2004-08-22 05:08) [0]Привет всем! Как давно я не заходил на форум! А всё из-за гадкой такой программы Blitz3D. Кто-нибудь знает? Если знает, то не знает ли ещё и аналога для Pascal-ориентированного языка. Что б делать игрушку не на бейсике и не на C/C++ (EzBlitz), а на родном языке ;)
← →
Zer0 © (2004-08-22 06:26) [1]imho писать игры на интрепретаторах - не самый лучший ход. =)
ближе всего к паскалю будет "питон" - http://www.pygame.org/
← →
Sanek_metaller © (2004-08-23 09:10) [2]На сколько я помню,там написано,что вообще на бейсике,но я могу и ошибаться.Фиг поймешь,так что лучше делфи нету.
← →
П7 (2004-08-23 09:34) [3]
> Xerx © (22.08.04 05:08)
Дык возьми какую-нибудь графическую оболочку, типа DelphiX, и пиши прямо в Delphi. (:
> Zer0 © (22.08.04 06:26) [1]
А разве этот язык для игр предназначен? (:
← →
Xerx © (2004-08-24 05:08) [4]Zer0> С питоном я что-то не разобрался, но понял одно - лучше уж на B3D.
Sanek_metaller> Ты имеещь в виду использовать только graphics API в Delphi, или надстройки над ними для Delphi?
П7> Предложи оболочку. Касательно DelphiX - слегонца медленно работает и, кстати, только для 2D графики. А Blitz3D может работать и с 2D и с 3D, причём одновременно: отрисовал 3D часть и уже командами 2D-рисования вывел изображения в плоскости камеры. Нет, безусловно, есть разные оболочки, но я пока не встретил(поэтому и ищу) 3D движков, где программы пишутся ТАК ЛЕГКО:
Global info1$="Teapot demo"
Global info2$="Features spherical reflection mapping"
Graphics3D 1280, 1024, 32, 0
teapot=LoadMesh( "teapot.x" )
tex=LoadTexture( "spheremap.bmp",64+1 )
EntityTexture teapot,tex
EntityFX teapot,1
camera=CreateCamera()
PositionEntity camera, 0, 0, -3
While Not KeyHit(1)
TurnEntity teapot, 0.5, 0.7, 1.1
UpdateWorld
RenderWorld
Flip
Wend
End
В примере вращается чайник, загруженый из DirectX файла(можно ещё из 3DS и D3D-свой формат), покрытый сферической текстурой(BMP, JPEG, PNG и что-то ещё).
Я работал с OpenGL и DirectX. Чисто на этих API программа была бы куда больше и сложней. А так B3D - надстройка над openGL, в виде готового движка с компилирующейся скриптовой частью. На мой взгляд, он очень удобен для написания всяких аркад и не слишком гениальных 3D игр. Для начала он самое то, но для профессионального программирования игр - ПОТОМ нужно будет менять на что-то посерьёзней.
Итак, дочитавший до этого места, может считать себя героем. Однако вопрос остаётся: есть ли реальные конкуренты по этим позициям для Blitz3D с языком, близким к Pascal(вроде как ADA и Modula похожи, но я лично не сталкивался с программами на этих языках).
P.S. Вру! Встречал на Modula: "Си_Модула_Паскаль" - вроде так называется. Компилятор для этих языкрв. 6 в одном: там есть поддержка русского синтаксиса, типа такого:цикл для колво от 1 до 100 делать инкремент(овлок) концикл
. Ну, типа того.
← →
Xerx © (2004-08-24 05:18) [5]P.P.S.
1) Собственный формат B3D, а не D3D - может же опечататься человек в 5 утра.
2) Тут могут напомнить про GLScene, но я не соглашусь, т.к. GLScene многократно сложнее по написанию, хоть и побыстрей и возможностей побольше, да и нет РУССКИХ хелпов с НАИПОДРОБНЕЙШИМ описанием ВСЕХ средств. У Blitz есть! Вывод, GLScene отпадает.
Ну и P.3[S]: Готов ответить на любую оправданную критику, т.к. моё мнение по природе субъективно.
← →
Zer0 © (2004-08-24 09:57) [6]WinAPI + OpenGL/D3D + сконвертированные обьектники от C-библеотек, немного фантазии + оч. много доков по алгоритмам отрисовки сцены (включая различные LOD и clpping оптимизации) + классы как в Blitz3D = достойная замена
никакая надстройка не может считаться удобной по умолчанию. почти в 96% случаев приходтся переделывать ее под себя, а в случае с Blitz3D исходники закрыты. я как то пытался на блице написать небольшую RPG, и понял что ограничения самого языка помешают доделать проэкт. 1 неделя девелопинга впустую.
imho игры писать нужно только на C++. простые получаются комактными и c красивым кодом, а большые пишутся исключительно c использованием шаблонов классов (в т.ч. STL) и пергрузкой операторов, ну и прочими радостями (чтобы создать 4 разных списка средстваим делфи придется написать 4 разных класса, или извращаться. в си++ нужно всего 4 обявления переменных)
еще одни плюс си - все сколько нибудь серьезные и полезные библеотеки написаны на нем.
← →
Darthman © (2004-08-24 10:50) [7]Правильно сказали:
"программы все больше и больше выполняют никому не нужной работы. Вычислительный КПД программ постоянно падает."
И все это, между прочим, из-за надстроек и интерпретаторов, .NET будет последним томозом на ближайшее время.
← →
Sapersky (2004-08-25 13:46) [8]Приведённый пример в чём-то похож на абстрактный режим Direct3D (D3DRM). Хотя там писать, конечно, больше. И все фичи современных ускорителей не поддерживает (впрочем, это общая проблема всех оболочек, так?). И не развивается уже.
Так что лучшая оболочка, наверное - GLScene.
Ещё вот какой вопрос - позволяет ли оболочка залезть на уровень полигонов, если нужно (это тебе сейчас кажется, что не нужно... :)).
D3DRM - с трудом, но в принципе можно; GLScene - можно, к тому же исходники открыты.
Blitz3D?
← →
П7 (2004-08-25 15:57) [9]
> Xerx © (24.08.04 05:08) [4]
Ну вот например я написал свой движок под OpenGL+Delphi. Когда классы все будут написаны до конца вот как будет выглядеть твоя дема на Delphi+P7OGLGfx:
var
Gfx : P7Gfx;
Model : P7Model;
begin
Gfx := P7Gfx.Create();
Gfx.Init( "Тестовое окно", 1024, 768, true );
Model := P7Model.Create( @Gfx );
Model.LoadFromFile( "model.x" );
while not Gfx.Finish do
if Gfx.gfxBegin() then
begin
Model.RotateAndDraw( 0, 0, 0, 0.2, 0.2, 0.2 );
if Gfx.Input.bKeyDown then
Gfx.Finish := true;
Gfx.gfxEnd();
end;
end;
Вот, не так всё и сложно. Зато у меня по мимо всего этого имеются пути к оптимизации движка, его расширению без всяких там универсальных подходов DLL и вообще, весь исходный код...
← →
Darthman © (2004-08-25 16:01) [10]П7 (25.08.04 15:57) [9]
Класс! (:
← →
Xerx © (2004-08-26 04:45) [11]> Zer0
А кто ж собирается писать RPG. Я и не говорил, что на нём это хорошо получится. Нет, безусловно, у гения может и выйдет, но я ТАКИХ гениев ещё не встречал. А для создания аркад и тому подобных игрушек он подходит. Просто нравиться мне эти система связывания, блин. Если б не она ни в жисть не бросил бы OpenGL. Надеюсь с недели на неделю вернусь.
>Darthman
Думаю, .NET ещё долго ничто и никто не переплюнет.
> Sapersky
Да, до отдельных точек.
> П7
НУ крутой, крутой :) Само собой!!! А то я не понимаю. У Blitz МНОГО чего нет. Но есть у него такой шарм, мелкие такие фишки, которых я нигде не встречал, и не знаю, смогу ли сам реализовать с 5 летним стажем программирования! Я просто пока делаю игру на нём, чтобы в будущем надисать свою оболочку (да, типа P7OGLGfx) и перенести игру на неё с наименьшими изменениями в коде. Просто 280 ФПС маловато на моём компьютере.
Страницы: 1 вся ветка
Форум: "Игры";
Текущий архив: 2004.12.26;
Скачать: [xml.tar.bz2];
Память: 0.49 MB
Время: 0.032 c