![]() |
Blitz3D engine
Мне немного надоело, что в Blitz3D нету шейдеров, теней(стандартно),
физики(тоже стандартно=))))...Так что я решил написать свой 3D движок под С++. Язык реализации движка: Microsoft Visual C++ 6.0 Но почему же он называется Blitz3D engine? Да потому что движок под С++, но все команды будут максимально приближены к командам Blitz3D. Теперь инициализация окна занимает всего несколько строчек!!! Движок будет написан с нуля. Некоторые вещи, которые я могу не знать, будут прочитаны в гугле и Irrlichte. но опять же, это будет не Copy/Paste, а написание заного...У движка будет несколько плюсов, относительно стандартного Blitz3D... 1. Он использует Шейдеры 2. Будет встроенная физика(после реализации графической части) 3. Будет поддержка теней(после реализации всех Blitz3D комманд) 4. Рендер посредством OpenGL, значит кроссплатформенный!!! 5. это я расскажу по мере написания двига+) Разработка движка будет проходить немного медленнее, так как нельзя уделять все время только кодингу=)))) ээээ......ах да, и еще, движок будет написан, используя справку Blitz3D версии 1.85 некоторые команды будут убраны...некоторые добавлены..... в этой теме я буду отписываться, что реальзовано в двиге и переодически преводить код главного файла=))) фух...все!:) Какие появились соображения? =) |
Re: Blitz3D engine
Вокруг Б3Д уже чо только не воротили. Совет: смени название, чтобы не путать людей.
|
Re: Blitz3D engine
БУдет платный????)
|
Re: Blitz3D engine
А я не знаю, как менять название темы :@
нет, пока планирую бесплатный ;) |
Re: Blitz3D engine
Если будет бесплатный, да еще и с такими возможностями - уже жду.
|
Re: Blitz3D engine
Молодец ! давай начинай уже делать.
Кстати, это хорошо( для меня ), что ты выбрал Microsoft Visual C++ 6.0, ибо я с него начал свое обучение на сях, так что жду твои коды и на нем. |
Re: Blitz3D engine
да я уже начал=) завтра-послезавтра опубликую первые успехи+)))
|
Re: Blitz3D engine
Хм, а этот чем плох http://blitz.pp.ru/forum/showthread....&threadid=2065
Единственое отличие, он под ДХ9. |
Re: Blitz3D engine
шейдеры-мейдеры ... блин ...
хотя бы просто движок на OGL чтобы был полностью процедурный синтаксис блица и обганял по скорости блиц то тогда рулез был бы а то одними шейдерами погоду не зделаешь |
Re: Blitz3D engine
Полный респект и уважуха если такое сотворишь!
|
Re: Blitz3D engine
А формат свой будет B3B_rus=))) или старый планируеш оставить=)?
|
Re: Blitz3D engine
XenuS, удачи! Незабудь физ двиг подкрутить :) Только сделай двиг универсальным, т.е. чтоб к нему можно было легко прикрутить библиотеки. И название лучше и вправду сменить, на вскидку: XE (XenuS Engine), B3X
|
Re: Blitz3D engine
Блин вы чего? уже ведь есть такое, где-то видал... Команды Б3Д а синтаксис С или С++ не помню. Или это будет нечто иное??? Просто добавить для физики Ньютон или Физикс и всё. Движков так много и на разные вкусы, что возникает естественный вопрос чем этот будет лучше/круче других?
|
Re: Blitz3D engine
Цитата:
Цитата:
|
Re: Blitz3D engine
Данил флудер)
Всё что там перечислено есть и в других двигах. Вопрос в том, будут ли эти возможности реализованы на должном уровне и обгонять по скорости обработки другие подобные двиги. |
Re: Blitz3D engine
Назови мне хотя бы один двиг, похожий на блитз3д (такой же простой), но с со всеми современными графическиими возможностями, и чтоб ресурсов не много жрал? кроме b3d_dx9 (или как)
Еще не одного нормального нету. Все они или устарели, или жутко требовательные к системе, или уж больно сильно ограничены. |
Re: Blitz3D engine
XenuS, какие дашь гарантии? Обещания давать несложно. Выполнить посложней.
|
Re: Blitz3D engine
Цитата:
|
Re: Blitz3D engine
Я имел ввижу со такими возможнастями, как указаны у XenuS )))
|
Re: Blitz3D engine
эээ....я никаких гарантий не даю....я делаю для себя....
сейчас уже реальзовано по хелпу вся математика, все функции со строками.....вывод текста на экран......идет работа над файлами... после этого, я начну делать саму обработку 3Д, все расчеты....и т. д. (все в синтаксисе B3D))) для примера, вот инициализация окна и 3Д: #include "Blitz3D.h" void main(int argc, char *argv[]) { InitBlitz3DDevice(argc, argv); Graphics3D(1024, 768, 32, 0); AppTitle("Blitz3D engine by ~XenuS~"); //здесь все задания значения переменных... StartMainBlitzLoop(); } void MainBlitzLoop() { RenderWorld(); Flip(); } void KeyboardEvent(unsigned char key, int x, int y) { if (KeyDown(key,B3D_ESC)) End(); } void MouseEvent(int button, int x, int y, int scale) { } после всего, что есть в Б3Д, я уже буду кодить фичи, типа шейдеров(исходник есть, но вставлен он будет только после этого), теней, физики и т.д.... Я хочу сделать полноценный 3Д двиг.... так что как будет что-то стоящее и красивое(по скринам=)), то я непременно выложу...а текст "Hello world" или "~XenuS Software inc.~" я думаю не так впечатляет.....хотя и сделан теми же командами, что и в Б3Д....естессно надо будет чуть-чуть переучиться, но синтаксис схож, и привыкнуть будет не трудно....вроде все сказал+) |
Re: Blitz3D engine
вышеприведенный код компилируется и работает нормально?
|
Re: Blitz3D engine
угу....если б не работал, я б его не выкладывал=)
|
Re: Blitz3D engine
XenuS, ты крут конешно :)
Я тебе вот что скажу, даже если синтаксис твоего движка не будет схож на Блиц, это не беда. Ты главное сделай так что бы там просто были команды и не важно как они назывались. Т.е например ты в блице есть команда createcamera а у тебя будет CrtCam , это не важно. Справку можно глянуть :) Главное что бы там были команды\функции. Что бы не нужно было погружатся в дебри машиного програмирования, а просто смотреть в справке какая команда что делает. Как мне кажется, наибольшее приемущество у твоей проги было бы: :) есть свой формат 3д моделей.(имеется так же експортер с 3ds max) Формат потдержует все стандартные материалы 3ds max. :) какой нить елементарный редактор карт, но с возможностью каждому его дописывать(скрипты, утилиты...) :) Удобный интерфейс (если с кучей кнопок, с открывающимеся списками коман\функций... это ваще Яд :) Короче так что бы это было что-то на типа гибрида "game makera" с "Blitz" но на С. Цены тебе небыло бы :):):) |
Re: Blitz3D engine
Нет. гибрид "game makera" с "Blitz" это ужАс. НЕ делай так. Лучше пусть будет статья, как создать редактор, но не встроеный.
И формат, я думаю, создавать свой не надо. Лучше как-нибудь сделать, чтобы читался b3d. Если, конечно, он будет бесплатным ) Удобный интерфейс приветствуется! Хорошо было бы, если IDE у движка был бы какой-нибудь с крутым оформлением кода, но не с большим количеством кнопочек там всяких (как у BLIde). Кстати, а IDE-то плланируешь делать?) |
Re: Blitz3D engine
и каково он фига работает?
void MainBlitzLoop() { RenderWorld(); Flip(); } етож тока один раз выполнится? или какаято своя специфика? что то мне не нравится событейная модель управления. ЗЫ. А сам проект хооороший, буду помогать чем смогу ;) |
Re: Blitz3D engine
HolyDel
ну там же вызывается StartMainBlitzLoop() а в коде MainBlitzLoop() XenuS уже на данном етапе ты убил все приемущество и простоту блица :) если сейчас не убереш такой подход как в делфи никто твой двиг кроме тебя юзать не будет делай так же как в блице, если хочеш его повторить тоесть никаких вызовов пользовательских функций из двига только вызовы функций двига и все |
Re: Blitz3D engine
Цитата:
|
Re: Blitz3D engine
XenuS, давай , делай !! :)
когда планируеш завершить ?? если посмотреть на post number 20, думаю не скоро !! |
Re: Blitz3D engine
Chrono Syndrome, а требования к системе?
|
Re: Blitz3D engine
Цитата:
|
Re: Blitz3D engine
я его делаю, пока обыкновенным двигом под Си (как Irrlicht и тому подобные).....
вот если я дойду, и перепишу все функции блица из хелпа в двиг,, то я буду очень рад=))) Быстро я этот двиг писать не могу, так как на мне другой проект, но в этом тоже есть плюс....в том другом проекте нужна скриптовая система...вот её-то я и прикручу в этот двиг=) Потом можно будет скомпилить что-то типа: void main() { ReadScript("main.XeN"); } и все. А дальше на Билдере написать ИДЕ и через нее редактировать этот скрипт, а в нем можно какую хочешь структуру....хоть код Блица вставляй=) только для начала мне надо написать сам двиг...) 2jimon, эээ, моя простота заключается в том, чтобы двиг повторял все функции блица(это двиг), а полная замена кода Си, это уже сильно сказано(для меня - точно=)))....вот в скриптах все, что хотите=) Честно скажу, я не знаю, когда закончу....Иногда бывает проект летит, иногда встает.....время покажет=))) ЗЫ: перевел половину функций Б3Д по работе с файлами.....сейчас вожусь с директориями=) |
Re: Blitz3D engine
Цитата:
ГЫ, жду проект. Кста, а че будет с компиляторами? скок ехе будет весить? ну или что-то в этом роде :) |
Re: Blitz3D engine
не, не скоро=)
тв том, что я перевел только то, что элемекнтарно реализовать... вот реальзованные команды:
PS сам двиг планирую в 150 кб уместить...+100 кб на новые фичи... +5-10 Мб - готовый язык(скомпиленный ехе, умеющий читать скрипты=))) |
Re: Blitz3D engine
Хм, советую сделать систему как подключаемые модули, например если не используеться модуль для работы со звуком он не подключается и не компилируется, тем самым экономия.
MouseMove нема ;) |
Re: Blitz3D engine
MoveMouse сделал=)
ЗЫ: а с модулями хорошая идея, надо подумать) |
Re: Blitz3D engine
да, модули - руль !!
как в си !! |
Re: Blitz3D engine
А где MouseZ MosueZSpeed?
Ещё советую сделать MouseRelease (моммент как MouseHit тока отпускания), кака для мыши, так и для клавы. |
Re: Blitz3D engine
offtop:
Цитата:
|
Re: Blitz3D engine
ну я вообщем-то не кодер! Поэтому советов по кодингу давать не буду, и уж темболее строить из себя ацкого кодера!!!
Вот тебе слова со стороны моделера :) который програмирует на уровне встроеных скриптов. Если ты перепишешь полностью Блиц, и он с виду никак не изменится, (не учитывая удобности интерфейса). А просто будет не на бейсике а на С. И естествено откроется двер ьк еще большим возможностям. ТО ТЕБЯ будут помнить все кто ща любит и юзает блиц!!! И это поистине будет нужная вещиЦА. Надеюсь доведешь до конца начатое. Ибо, если бросишь начатое, то тебя всеравно будут помнить, только вот с другого окна перспективы ]:) |
Re: Blitz3D engine
Нет, этот тред однозначно доставляет :-D . XenuS, скажи честно, вот ты сам-то веришь, что кто-то будет использовать твою ф-ию "Pi" ? Про остальное я уж, так и быть, умолчу)...
|
Re: Blitz3D engine
Blitz переписать на С ??
а может С переписать на Blitz (только при этом его многократно улутшить) ?? |
Re: Blitz3D engine
IGR, обратное невозможно. Уже проще писать свой компилятор и сразу двиг подобие блиц.
Да и напомню, блиц - не бог, он и удобен но и ущербен не в малом, и это убивает Реальный кодинг, возьмите DX SDK под C++, вот там кодинг, там простор, там возможности, а ущемлять что-то подогнанное для малого, это будет не очень. Нужно уже имея хорошие способности самому писать что-то серъёзное, и отдаляться от примитивов. |
Re: Blitz3D engine
Chrono Syndrome, да не=))) я же говорю: я переписываю хелп по блицу на С++...
и не важно, Pi там или не Pi...это просто в хелпе встретилось =))) IGR, эээ, я делаю двиг под С, а не под Б3Д |
Re: Blitz3D engine
Цитата:
|
Re: Blitz3D engine
Цитата:
ЗЫ: хорошо, больше постараюсь не ошибаться так=) |
Re: Blitz3D engine
2 MoKa:
про MouseZ u MouseZSpeed учтем....вещь реально нужная=))) |
Re: Blitz3D engine
Не, ну просто все в одно запихать - это не дело :)
|
Re: Blitz3D engine
Цитата:
То что уже есть в блице возьми из SDK !! а наченай добавлять новое: физику, скрипт, шейдеры !! а то ты велик делаеш !! |
Re: Blitz3D engine
Не нужно заниматься копи-пастом, делаешь своё, и чтобы знать его и чтобы была система своя, и организованность, нужно писать с нуля.
|
Re: Blitz3D engine
Если заниматся копипастем, будет сделано не так долго, но все таки уже не своё.... Я тоже не люблю заниматся копипастем.. и даже не люлбю чужыи либами пользоватся (исключение : fasttext). Лучше убью кучу времени. но напишу свою....
|
Re: Blitz3D engine
to MoKa: не копи-паст, а просто добавить в SDK шейдеры, скрипти и ... !!
это будет быстрей !! |
Re: Blitz3D engine
IGR, угу и никакого удовольствия, и опыта, и мощности. Сказали же, OGL - т.к. кроссплатформенность.
Давай мы не будем больше говорить: "возьми чужое и сделай его лучше"? Спасибо. |
Re: Blitz3D engine
ну если уж OGL !!
то ладн !! хотя на это уйдет лишнее время !! |
Re: Blitz3D engine
IGR, чё за логика ёмаё!!! Проще вообще воровать!
Причём тут время, важно качество и собственный опыт, а то так нифига не научишся, и будешь ходить в рядах неудачников. Забудь! ОПЫТ! ЗНАНИЯ! Вот что важно. |
Re: Blitz3D engine
MoKa, ВСЁ !!
Переубедил !! Спорить не буду !! ps: если б это делал я, то велик не создавал !! :) |
Re: Blitz3D engine
При чем тут сразу велик...
ПРосто свое создать все таки прикольней и круче... IGR, в таком случае вообще создавать игры? все идеи для игр уже созданы и создавать игру похожую тупо... а идей уже почти нет |
Re: Blitz3D engine
to Данил: игры - это одно, а двиг - совсем другое !!
где гарантии что его заюзают, если есть точно такой же , или даже лучше ?? |
Re: Blitz3D engine
IGR, делать двиг, троебует более глубоких знаний и умений. Во вторых делает каждый практически для себя, но в придачу и рад дать другим.
Уже всё реалезовано, а если хочеться изобретать, го в нвидию граф инженерами ;) |
Re: Blitz3D engine
Эй, эй. Все успакоились. Это двиг сугубо автора. И ему видней делать все полностью или напичкать чужой своими примочками.
Как желающий потестить двиг, то да , скажу что лучше бы побыстрее. А как человек собирающийся разобратся в написании двигов, то я бы писал полностью свой. |
Re: Blitz3D engine
Нафлудили ни о чем. Начинай с 0.
|
Re: Blitz3D engine
Данил, ты сядь за С++ и напиши хотя бы 2д двиг, и почувствуй это самое "удовольствие" и "крутость"
|
Re: Blitz3D engine
Ок !! Ладн !!
Надеюсь в следующих постах этой темы будут появляться только новости о новом двиге !! :) |
Re: Blitz3D engine
JohnK, за это дело взялся не я, а XenuS. и я советую как лучше.
А решать, надо ли копипастить или нет, будет XenuS. По крайней мере на блитзмаксе я редко копипастам занимаюсь. |
Re: Blitz3D engine
Так почему же ты с уверенностью утверждаешь что это круто и прикольно? Почувствуй на своей шкуре, а потом советуй. Делать игры и двиг - разные вещи.
|
Часовой пояс GMT +4, время: 10:06. |
vBulletin® Version 3.6.5.
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
Перевод: zCarot