|
19.09.2011, 20:45
|
#181
|
☭
Регистрация: 26.09.2006
Сообщений: 6,035
Написано 1,474 полезных сообщений (для 2,707 пользователей)
|
Ответ: axelynx
MoKa, спасибо тебе, дружище!
по кейворду CLI compatible я нашел крайне интереснеую тему.
конечно, писать целый враппер сильно нудно, но зато прикольно получается.
теперь с сишарповым проектом должны будут кататься две длл-ки - одна - сам движок, вторая CLI враппер под него.
синтаксис в шарпе получается примерно такой:
Engine eng = Engine.Init();
Window wnd = eng.AddWindow(800, 600, 32, WindowMode.WINDOWED, 8);
Canvas c = eng.GetCanvas();
c.ClearColor(0.2f, 0.3f, 0.4f, 1.0f);
c.Clear();
while (wnd.isRunning())
{
wnd.Flip(false);
wnd.Sync();
}
wnd.Free();
eng.Free();
естественно заврапливать буду только самые нужные вещи. ато нудно.
|
(Offline)
|
|
Эти 2 пользователя(ей) сказали Спасибо HolyDel за это полезное сообщение:
|
moka (19.09.2011), pax (24.09.2011)
|
19.09.2011, 21:04
|
#182
|
.
Регистрация: 05.08.2006
Сообщений: 10,429
Написано 3,454 полезных сообщений (для 6,863 пользователей)
|
Ответ: axelynx
Врапить как понимаю в CLI не так и сложно? Покажи пример, или хотя бы идею?
А то на самом деле можно заврапить почти с тем же успехом и используя сам C#.
Суть в CLI, это писать С++ код, сразу совместимым образом, так получается можно его бюдет ющать в managed коде
Но то что выше, уже в разы круче и лучше чем если бы это дело нада было бы писать функциями (без объектов).
|
(Offline)
|
|
19.09.2011, 21:19
|
#183
|
☭
Регистрация: 26.09.2006
Сообщений: 6,035
Написано 1,474 полезных сообщений (для 2,707 пользователей)
|
Ответ: axelynx
ну вот например окошко:
public enum class WindowMode
{
WINDOWED,
FULLSCREEN,
SPLASH,
SIZEBLE
};
public ref class Window
{
axelynx::Window *obj;
public:
Window(axelynx::Window *obj_):obj(obj_){}
bool Init(int width, int height, int bpp, WindowMode wm, int samples)
{return obj->Init(width,height,bpp,static_cast<axelynx::WindowMode>(wm),samples);}
bool Init(IntPtr handle,int bpp, int samples)
{
axelynx::Window::SystemHandle temp;
temp.tag = static_cast<int>(handle);
return obj->Init(&temp,bpp,samples);
}
bool ChangeResolution(int width, int height, WindowMode wm)
{return obj->ChangeResolution(width,height,static_cast<axelynx::WindowMode>(wm));}
bool Free()
{return obj->Free();}
bool SetText(const wchar_t* title)
{return obj->SetText(title);}
bool ReInit(int width, int height, int bpp, WindowMode wm, int samples)
{return obj->ReInit(width,height,bpp,static_cast<axelynx::WindowMode>(wm),samples);}
bool Sync()
{return obj->Sync();}
bool Flip(bool sync)
{return obj->Flip(sync);}
bool Resize(int width, int height, WindowMode wm)
{return obj->Resize(width,height,static_cast<axelynx::WindowMode>(wm));}
bool isActive()
{return obj->isActive();}
bool isRunning()
{return obj->isRunning();}
int GetWidth()
{return obj->GetWidth();}
int GetHeigh()
{return obj->GetHeight();}
int VSync(bool enabled)
{return obj->VSync(enabled);}
};
а прикольно тут то - что подключил dll-ку в референс и все работает из под коробки.
А то на самом деле можно заврапить почти с тем же успехом и используя сам C#.
|
тоже была такая идея.
теперь вот надо будет выкидывать сишный враппер наверное. хотя может еще для чего нибудь сгодится, для интеграции с lua например.
|
(Offline)
|
|
Эти 2 пользователя(ей) сказали Спасибо HolyDel за это полезное сообщение:
|
moka (19.09.2011), pax (24.09.2011)
|
27.10.2011, 14:23
|
#184
|
☭
Регистрация: 26.09.2006
Сообщений: 6,035
Написано 1,474 полезных сообщений (для 2,707 пользователей)
|
Ответ: axelynx
|
(Offline)
|
|
27.10.2011, 17:40
|
#185
|
.
Регистрация: 05.08.2006
Сообщений: 10,429
Написано 3,454 полезных сообщений (для 6,863 пользователей)
|
Ответ: axelynx
Красава, а на чём они основаны, как выглядит взгляд поперёк линии?
|
(Offline)
|
|
27.10.2011, 21:39
|
#186
|
☭
Регистрация: 26.09.2006
Сообщений: 6,035
Написано 1,474 полезных сообщений (для 2,707 пользователей)
|
Ответ: axelynx
поперек линии хреновенько выглядит.
вот демка: http://axelynx.googlecode.com/files/...ltimonitor.zip
отдельная просьба потестить тем - у кого 2 и более монитора.
|
(Offline)
|
|
27.10.2011, 22:05
|
#187
|
.
Регистрация: 05.08.2006
Сообщений: 10,429
Написано 3,454 полезных сообщений (для 6,863 пользователей)
|
Ответ: axelynx
Получается это два триангла, смотрящие на камеру?
Полёт хороший, фпс ХЗ.
|
(Offline)
|
|
27.10.2011, 23:16
|
#188
|
☭
Регистрация: 26.09.2006
Сообщений: 6,035
Написано 1,474 полезных сообщений (для 2,707 пользователей)
|
Ответ: axelynx
вот с паузой (пробел)
http://axelynx.googlecode.com/files/...nitorPause.zip
вообще с торца текстура меняется с линии на круг. но ето трудно поймать.
фпс маловат (для моих демок ) из-за того, что считается каждая линия на ЦПУ. каждая линия, это по сути entity, со свой позицией, скейлом и т.д. ее можно вращать, двигать и другие, типичные для entity вещи с ней делать. считать 10к матриц трансформаций не очень дешево. на пробле фпс чуть выше. т.е. линия не вырождается, если на нее смотреть с торца.
|
(Offline)
|
|
27.10.2011, 23:23
|
#189
|
.
Регистрация: 05.08.2006
Сообщений: 10,429
Написано 3,454 полезных сообщений (для 6,863 пользователей)
|
Ответ: axelynx
Это для системы линий делается? Или для чего?
Имхо, если нужна система линий, то это должны быть тупо линии, там же позиции и т.п. Не нужны Нужна трансформация для массива линий (контейнер) а не для каждой имхо. А вообще нужны разные типы линий и контейнеров для них..
Поймал с торца, уху, кругленькая..
|
(Offline)
|
|
Сообщение было полезно следующим пользователям:
|
|
30.10.2011, 21:14
|
#190
|
☭
Регистрация: 26.09.2006
Сообщений: 6,035
Написано 1,474 полезных сообщений (для 2,707 пользователей)
|
Ответ: axelynx
ну да для системы линий. но их объединяет скорее только текстура и расположение в мире. т.е. если система попадает во фрустум - то и значительная часть линий - попадет хотябы частично.
добавил тупо линию. порадовало, что с новой архитектуре на то, чтобы добавить их в двиг ушло 4 минуты. еще столько-же на новую демку. со старым двигом я бы парился пол дня посидел с профайлером - поправил самые тормозные места.
демка новая:
http://axelynx.googlecode.com/files/LightBeams2.zip
может работать медленнее - но из-за рендера. можно отвернуться, чтобы не видеть линии. или нажать на пробел - чтобы оценить время рендера.
линия как сущность тоже нужна, я считаю. на нее же оказывают влияние и родительские объекты и т.д. например такую линию можно будет привязать к кости руки и она будет как световой меч для джедая.
|
(Offline)
|
|
10.11.2011, 23:09
|
#191
|
☭
Регистрация: 26.09.2006
Сообщений: 6,035
Написано 1,474 полезных сообщений (для 2,707 пользователей)
|
Ответ: axelynx
запихал исходники опенсорсных либ в проект. теперь можно компилить как хочешь - хоть в 32 бита, хоть в 64, хоть в MT, хоть в MD. счастье. хочу сделать еще проект для code::blocks и компилятора MinGW. при компилции в 64 бита повылазило куча варнингов. будем править
потестите 64 битное приложение:
http://axelynx.googlecode.com/files/Test64bit.zip
Последний раз редактировалось HolyDel, 11.11.2011 в 04:20.
|
(Offline)
|
|
14.11.2011, 22:18
|
#192
|
Unity/C# кодер
Регистрация: 03.10.2005
Адрес: Россия, Рязань
Сообщений: 7,568
Написано 3,006 полезных сообщений (для 5,323 пользователей)
|
Ответ: axelynx
380-390 FPS когда видно все кубики
|
(Offline)
|
|
Эти 2 пользователя(ей) сказали Спасибо pax за это полезное сообщение:
|
|
18.12.2011, 00:59
|
#193
|
☭
Регистрация: 26.09.2006
Сообщений: 6,035
Написано 1,474 полезных сообщений (для 2,707 пользователей)
|
Ответ: axelynx
подключил bullet и opencl. думаю над сишным апи.
|
(Offline)
|
|
Эти 5 пользователя(ей) сказали Спасибо HolyDel за это полезное сообщение:
|
|
20.12.2011, 14:17
|
#194
|
Мастер
Регистрация: 09.05.2010
Адрес: Самара
Сообщений: 1,083
Написано 254 полезных сообщений (для 533 пользователей)
|
Ответ: axelynx
А можешь показать какой нибудь няшный скрин?
А то карточка не держит на работе OGL 3, посмотреть охота, а дома некогда )))))))))))))
|
(Offline)
|
|
20.12.2011, 17:06
|
#195
|
.
Регистрация: 05.08.2006
Сообщений: 10,429
Написано 3,454 полезных сообщений (для 6,863 пользователей)
|
Ответ: axelynx
Просит вставить няшную медию с няшными шейдерами.. Это никак сути движка не покажет..
|
(Offline)
|
|
Сообщение было полезно следующим пользователям:
|
|
Ваши права в разделе
|
Вы не можете создавать темы
Вы не можете отвечать на сообщения
Вы не можете прикреплять файлы
Вы не можете редактировать сообщения
HTML код Выкл.
|
|
|
Часовой пояс GMT +4, время: 13:21.
|