![]() |
Что для разработки 2D приложения лучше?
Вдруг я неожиданно задался некоторыми вопросами. Вопросы возникли в процессе разработки 2D приложения на Blitz3D. Собственно вот они:
- Какие различия в 2D разработке на Blitz3D и на BlitzMax? - В чем их плюсы и минусы? - Насколько похож их синтаксис? Собственно в зависимости от ответов я буду решать на каком Blitz'e мне продолжать разработку, так что мне очень важно мнение опытных программистов на этих языках(Не знаю стоит ли их называть "языками" :dontknow: ) |
Ответ: Что для разработки 2D приложения лучше?
Для 2d - однозначно BlitzMax.
Синтаксис почти совместимый. В Blitz3d нет ни альфа-смешивания, ни нормальной трансформации. |
Ответ: Что для разработки 2D приложения лучше?
Только хотел попросить аргументировать ваше мнение, а вы тут как тут)
Спасибо. Попробую поиграться с BlitzMax'ом :) |
Ответ: Что для разработки 2D приложения лучше?
Главные различия это технология для отрисовки. В Blitz3D используется древний Direct2D (DirectDraw). Он не использует аппаратного ускорения, заместо этого нагружает процессор отрисовкой. Следственно там идёт больше работа с пикселями, нежели объектами и т.п.
Нету трансформаций толковых, нету визуальных фишек типо прозрачности, цвета и т.п. И даже попиксельная имплементация просто убъёт любой процессор нагрузкой. Вариант есть - использовать 3D для отрисовки 2D - но тебе прийдётся самому реализовать 2D библиотеку - а это куча времени. Есть FastImage библиотека нашим отечественным разрабом MihailV. Возможности этой 2D библиотеки на ровне с BlitzMax (2D стандартной библиотекой). Но снова, это если тебе всё ещё нужен 3D. Если тебе нужен только 2D, то конечно BlitzMax лучше в разы. Не только потому что 2D библиотека лучше по возможностям и производительности. Но также потому что этот язык намного лучше чем старичёк Blitz3D. В BlitzMax'е намного лучше классы, также лучше синтаксис. Есть наконец указатели "нормальные", списки и т.п. Я рекомендую BlitzMax однозначно. |
Ответ: Что для разработки 2D приложения лучше?
От БМакса ты еще получишь мультиплатформенность, кучу модулей заточенных именно под 2Д (например физика, системы частиц и т.д...). А еще 3Д к 2Д прикрутить не составит труда, это легко достигается подменой девайса в классе TMax2DGraphics
|
Ответ: Что для разработки 2D приложения лучше?
Цитата:
C Direct3D будет по сложнее... Наследуешь новый класс от TD3D9Max2DDriver, замещаем методы создания окна и девайса, делая их пустыми. После чего, устанавливай этот драйвер как текущий. Береш 3Д двиг, например Xors3D, подключаешь его БМаксу, создаешь графику, функцией xGetDevice() и xGetWindow() получаешь дескрипторы устройства и окна соответственно, и ставишь их в унаследованный драйвер. |
Часовой пояс GMT +4, время: 15:30. |
vBulletin® Version 3.6.5.
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
Перевод: zCarot