Страница 1 из 2

порт farseer/box2d на юнити

СообщениеДобавлено: 19 апр 2012, 00:43
gnoblin
Т.к. недавно появился порт box2d на юнити
http://www.catsinthesky.com/blog/articl ... ity-part-1
http://forum.unity3d.com/threads/131141 ... -%28WIP%29

А я раньше не работал с box2d, мне стало интересно какая есть полезная информацию на эту тему - поэтому посоветовался с умными людьми :) .

много информации с примерами тут:
http://www.emanueleferonato.com/category/box2d/

мануал:
http://tigrojop.ru/files/translate/box2 ... 0-rus.html

Re: порт farseer/box2d на юнити

СообщениеДобавлено: 19 апр 2012, 06:18
raul82
Спасибо
аццкая демка.
Create REAL explosions with Box2D – adding textures
http://www.emanueleferonato.com/2012/01/17/create-real-explosions-with-box2d-adding-textures/
вот бы пример на юнити ченить подобное )

и вопще куда юнитеки смотрят.
даешь бокс2д и с++ в юнити :-h .

Re: порт farseer/box2d на юнити

СообщениеДобавлено: 19 апр 2012, 10:50
DbIMok
raul82 писал(а):даешь бокс2д и с++ в юнити

а кто не дает?

Re: порт farseer/box2d на юнити

СообщениеДобавлено: 19 апр 2012, 11:52
raul82
DbIMok писал(а):
raul82 писал(а):даешь бокс2д и с++ в юнити

а кто не дает?

действительно..
насколько я знаю бокс2D изначально написан с++
тогда вопрос
нахрена его нада было портировать на шарп?
с++ комплировался бы в нативный код на мобилках,а не в какуюто виртуальную хрень,которая всеголишь на 50% медленне нативного кода

Re: порт farseer/box2d на юнити

СообщениеДобавлено: 19 апр 2012, 16:13
Fredo
Хм интересно, а я всегда думал что все .net семейство при компиляции транслируется в IL а при исполнении в нативный код. Так что разницы между managed C++ и C# я не пойму, за исключением того что С# элегантен и логичен в отличии от C++ (превед void*).

Re: порт farseer/box2d на юнити

СообщениеДобавлено: 20 апр 2012, 07:53
seaman
а при исполнении в нативный код

А на это время при исполнении не тратится?
Плюс еще есть такая штука как GC, которая тоже требует времени.
ЗЫ: но я все-равно пользуюсь только C#. многочисленные тонкости и хитрости плюсов не по мне. Ну а 50% замедление вполне терпимо.

Re: порт farseer/box2d на юнити

СообщениеДобавлено: 20 апр 2012, 08:39
Fredo
seaman писал(а):
а при исполнении в нативный код

А на это время при исполнении не тратится?
Плюс еще есть такая штука как GC, которая тоже требует времени.
ЗЫ: но я все-равно пользуюсь только C#. многочисленные тонкости и хитрости плюсов не по мне. Ну а 50% замедление вполне терпимо.

Да я почему то об этом не подумал) просто уже привык к такому положению дел. А GC мне лично очень нравится, меня жутко бесило в C++ удалять переменные, а тут я об этом даже не задумываюсь. Да и получить утечку памяти шанс значительно снижается.

Re: порт farseer/box2d на юнити

СообщениеДобавлено: 26 апр 2012, 18:56
Kann
raul82 писал(а):с++ комплировался бы в нативный код на мобилках,а не в какуюто виртуальную хрень,которая всеголишь на 50% медленне нативного кода

он и так на мобилках компилирует в натив код средствами моно, по крайней мере на яблофонах.

Re: порт farseer/box2d на юнити

СообщениеДобавлено: 26 апр 2012, 18:57
Kann
seaman писал(а):А на это время при исполнении не тратится?

если брать яблофон, то он это делает во время билда проекта, а если PC то в первый запуск.

Re: порт farseer/box2d на юнити

СообщениеДобавлено: 26 апр 2012, 19:13
DbIMok
Kann писал(а):а если PC то в первый запуск

и где этот код можно посмотреть? )

Re: порт farseer/box2d на юнити

СообщениеДобавлено: 26 апр 2012, 19:32
seaman
если PC то в первый запуск.

мобилки не знаю, а на ПС компилируется класс при первом к нему обращении. Т.е. постоянно в процессе работы приложения на это отнимается какое то время, все меньшее, но не нулевое - пока не будет произведено обращение ко всем нужным классам.

Re: порт farseer/box2d на юнити

СообщениеДобавлено: 26 апр 2012, 19:42
Kann
seaman писал(а):
если PC то в первый запуск.

мобилки не знаю, а на ПС компилируется класс при первом к нему обращении. Т.е. постоянно в процессе работы приложения на это отнимается какое то время, все меньшее, но не нулевое - пока не будет произведено обращение ко всем нужным классам.

http://msdn.microsoft.com/ru-ru/library/6t9t5wcf(v=vs.90).aspx
но вот на счет юнити я думаю что правильно ваше утверждение...

Re: порт farseer/box2d на юнити

СообщениеДобавлено: 26 апр 2012, 19:43
raul82
Чето напридумывали себе про натив не натив, вот из справки:

Unity compiles all scripts to .NET dll files. The .dll files will be jit compiled at runtime.
This allows incredibly fast script execution. It is around 20 times faster than traditional javascript and around 50% slower than native C++ code. Unity might take a second to compile all your scripts when you save it. You can see if Unity is still compiling with the small spinning progress icon in the lower right corner of Unity's main window.


мое мнение - пох в че он там компилируется, главное то что выделено жирным

Re: порт farseer/box2d на юнити

СообщениеДобавлено: 26 апр 2012, 19:48
Kann
raul82 писал(а):Чето напридумывали себе про натив не натив, вот из справки:

справка тут непричем, если брать яблофон, то апплы просто не поддерживают фреймворк .NET, моно и Юнити в том числе использует статическую компиляцию
http://habrahabr.ru/post/50820/

Re: порт farseer/box2d на юнити

СообщениеДобавлено: 26 апр 2012, 20:01
raul82
Kann писал(а):
raul82 писал(а):Чето напридумывали себе про натив не натив, вот из справки:

справка тут непричем, если брать яблофон, то апплы просто не поддерживают фреймворк .NET, моно и Юнити в том числе использует статическую компиляцию
http://habrahabr.ru/post/50820/

пнятно.
а почему тогда нативный код пустого проекта, получаемый кокосом или кокосомХ в разы(а то и на порядки) меньше нативного кода юнити?
значить юнити тащит с собой какието библиотеки - в результате чего получаем around 50% slower than native C++ code. :)