|
|
|
Канал Игры Мечты: «Новая отечественная онлайн космическая игра Pilot3D» |
|
|
DIMOSUS.X 995 EGP
Рейтинг канала: 4(67) Репутация: 188 Сообщения: 3252 Откуда: Vilnius/Minsk Зарегистрирован: 06.08.2008 |
|
В XNA ни чего такого нет, это как бы не сильно толстая обертка .NET для DirectX. Все нужно делать самому - там да же нет спрайтов и систем частиц. Но в этом то и прелесть XNA - если подойти с умом, то проигрыш в производительности по сравнению с С++ кодом будет минимальным
_________________ Даже ежики ежиков могут с трудом,
Иначе бы ежики были кругом.
Последний раз редактировалось: DIMOSUS.X (12:41 24-04-2012), всего редактировалось 1 раз |
|
|
pilot3d 52 EGP
Репутация: 1 Сообщения: 22
Зарегистрирован: 22.12.2011 |
|
Magistr_AVSH : |
Эффекты следов там делаются через шейдеры, и через спрайты.
Есть кстати в wpf3d шейдеры?
|
шейдеры есть, спрайтов нет
честно говоря, не очень понимаю, как шейдеры влияют на след в 3д
DIMOSUS.X : |
В XNA ни чего такого нет, это как бы не сильно толстая обертка .NET для DirectX. Все нужно делать самому - там да же нет спрайтов и систем частиц. Но в этом то и прелесть XNA - если подойти с умом, то проигрыш в производительности по сравнению с С++ кодом будет минимальным
|
вот!
wpf конечно по производительности уступает сильно. нарисовал себе 10к частиц и проц умер %(
ладно была бы возможность напрямую к директикс обратиться, так ведь нет...
Последний раз редактировалось: pilot3d (21:05 24-04-2012), всего редактировалось 2 раз(а) |
|
|
Kann 64 EGP
Рейтинг канала: 3(45) Репутация: 7 Сообщения: 232 Откуда: Москва Зарегистрирован: 11.04.2008 |
|
pilot3d : |
ладно была бы возможность напрямую к директикс обратиться, так ведь нет...
|
так зачем вы повторяете ёжиков которые плачут колется но продолжают грызть кактус ?
возьмите XNA, или Unity3d и сделайте лучше и красивее и главное быстрее и надежнее, вы же когда хотите булку хлеба, не идете добывать глину для печки и сажать зерно ? а зарабатываете деньги на работе, все же инструменты для того и предназначены что бы не лбом гвозди забивать
|
|
|
Guest 2075 EGP
Рейтинг канала: 5(167) Репутация: 376 Сообщения: 27975 Откуда: Моск. Зарегистрирован: 12.10.2004 |
|
pilot3d : |
шейдеры есть, спрайтов нет
честно говоря, не очень понимаю, как шейдеры влияют на след в 3д
|
Вообще какбэ две сущности - спрайты как меш, а шейдеры - как закраска меша.
Как шейдер написать - так он и будет закрашивать. Ему, тащемта, по барабану, от каких параметров плясать. Можно угол между вектором мировой Z и углом взгляда выразить в виде компоненты красного и половины компоненты зелёного, компрене-ву?
добавлено спустя 1 минуту:
Kann : |
возьмите XNA, или Unity3d и сделайте лучше и красивее и главное быстрее и надежнее, вы же когда хотите булку хлеба, не идете добывать глину для печки и сажать зерно ? а зарабатываете деньги на работе, все же инструменты для того и предназначены что бы не лбом гвозди забивать
|
Иногда проше пойти и накопать глины, чем разбираться с консолью управления автоматизированным комплексом атомной станции и 3d-принтера...
_________________ Трещит земля как пустой орех
Как щепка трещит броня
Последний раз редактировалось: Guest (21:38 24-04-2012), всего редактировалось 1 раз |
|
|
DIMOSUS.X 995 EGP
Рейтинг канала: 4(67) Репутация: 188 Сообщения: 3252 Откуда: Vilnius/Minsk Зарегистрирован: 06.08.2008 |
|
Guest : |
а шейдеры - как закраска меша
|
Не стоит забывать про вертексные шейдеры — скажем спрайты разворачивать в них милое дело
_________________ Даже ежики ежиков могут с трудом,
Иначе бы ежики были кругом. |
|
|
Kann 64 EGP
Рейтинг канала: 3(45) Репутация: 7 Сообщения: 232 Откуда: Москва Зарегистрирован: 11.04.2008 |
|
Guest : |
Иногда проше пойти и накопать глины, чем разбираться с консолью управления автоматизированным комплексом атомной станции и 3d-принтера...
|
конечно, не кто не предлагает заколачивать гвозди микроскопом, но ко всему нужно подходить с трезвой оценкой...
|
|
|
Guest 2075 EGP
Рейтинг канала: 5(167) Репутация: 376 Сообщения: 27975 Откуда: Моск. Зарегистрирован: 12.10.2004 |
|
DIMOSUS.X : |
Не стоит забывать про вертексные шейдеры — скажем спрайты разворачивать в них милое дело
|
Ну, это уже позже. Для начала их можно использовать для простой трансляции координат... А потом да. А ещё есть геометрические шейдеры, ими милое дело микродетализацию делать...
_________________ Трещит земля как пустой орех
Как щепка трещит броня |
|
|
DIMOSUS.X 995 EGP
Рейтинг канала: 4(67) Репутация: 188 Сообщения: 3252 Откуда: Vilnius/Minsk Зарегистрирован: 06.08.2008 |
|
Слышал, но не щупал — XNA выше 3.0 не держит.
Планетарные ландшафты с их помощью получаются великолепные.
_________________ Даже ежики ежиков могут с трудом,
Иначе бы ежики были кругом. |
|
|
Shirson 1605 EGP
Рейтинг канала: 7(626) Репутация: 219 Сообщения: 16511 Откуда: 79°W 44°N Зарегистрирован: 29.01.2002 |
|
DIMOSUS.X : |
В XNA ни чего такого нет, это как бы не сильно толстая обертка .NET для DirectX. Все нужно делать самому - там да же нет спрайтов и систем частиц. Но в этом то и прелесть XNA - если подойти с умом, то проигрыш в производительности по сравнению с С++ кодом будет минимальным
|
Как написано в мануале к Unity, компиленные скрипты C# работают в два раза медленее компиленного кода C++. Это, как-то, не сильно укладывается в рамки "минимально"
_________________ У меня бисера не доxеpа. |
|
|
pilot3d 52 EGP
Репутация: 1 Сообщения: 22
Зарегистрирован: 22.12.2011 |
|
Shirson : |
Как написано в мануале к Unity, компиленные скрипты C# работают в два раза медленее компиленного кода C++. Это, как-то, не сильно укладывается в рамки "минимально"
|
по сравнению с WPF где производительность падает в десятки (в некоторых случаях) в сотни раз перед директ иксом это несущественно.
Kann : |
так зачем вы повторяете ёжиков которые плачут колется но продолжают грызть кактус ?
возьмите XNA, или Unity3d
|
юнити принципиально не хочется, а вот XNA другое дело. вопрос портации пока открыт. параллельно в wpf версией запускаю тестовые задачки на xna, результат внушает конечно.
Guest : |
Вообще какбэ две сущности - спрайты как меш, а шейдеры - как закраска меша.
Как шейдер написать - так он и будет закрашивать. Ему, тащемта, по барабану, от каких параметров плясать. Можно угол между вектором мировой Z и углом взгляда выразить в виде компоненты красного и половины компоненты зелёного, компрене-ву?
|
жу сви
поэтому и спросил. свечение и затухание трейла - шейдер, а точка в 3д - спрайт, языком wpf меш3д. соответственно весь светящийся путь набор большого числа мешей. вот как только их становится больше пары сотен, проц умирает, fps ложится до 10 кадров в сек и ниже
|
|
|
Guest 2075 EGP
Рейтинг канала: 5(167) Репутация: 376 Сообщения: 27975 Откуда: Моск. Зарегистрирован: 12.10.2004 |
|
pilot3d : |
соответственно весь светящийся путь набор большого числа мешей. вот как только их становится больше пары сотен, проц умирает, fps ложится до 10 кадров в сек и ниже
|
Ну так ликвидировать "хвостовые" меши, делать динамическое разбиение (если летим по прямой - зачем нам эту прямую мостить полигонами? Достаточно одного, плюс-минус, последний меш одним ребром привязывается к соплу и маскируется светом двигателя, пока разница в угле мала. Когда превышает пороговое значение - делаем ещё меш), проводить аппаратную тесселяцию...
_________________ Трещит земля как пустой орех
Как щепка трещит броня
Последний раз редактировалось: Guest (09:20 25-04-2012), всего редактировалось 1 раз |
|
|
Tranikus 93 EGP
Репутация: 23 Сообщения: 34
Зарегистрирован: 25.04.2011 |
|
pilot3d : |
и непонятно будет в любом случае куда нужно сдвинуться, чтобы снова поймать цель.
|
Я так не думаю. Нужно просто будет "управлять" нитью или траекторией (в этом и вся необычность метода, новизна) и наводить её на пересечение с целью. Для проверки надо б сворганить эту идею, потестить.
Может ты и что-то лучшее предложишь. Посмотрим.
_________________ Сквозь Звёзды мчится фантазия. Она материальна, т.к. материальны все мысли. |
|
|
Shirson 1605 EGP
Рейтинг канала: 7(626) Репутация: 219 Сообщения: 16511 Откуда: 79°W 44°N Зарегистрирован: 29.01.2002 |
|
pilot3d : |
Shirson : |
Как написано в мануале к Unity, компиленные скрипты C# работают в два раза медленее компиленного кода C++. Это, как-то, не сильно укладывается в рамки "минимально"
|
по сравнению с WPF где производительность падает в десятки (в некоторых случаях) в сотни раз перед директ иксом это несущественно.
|
А если с арифмометром сравнить, так и в миллиарды раз
Но сути того, что компиленый скрипт работает в два раза медленее это не меняет.
_________________ У меня бисера не доxеpа. |
|
|
pilot3d 52 EGP
Репутация: 1 Сообщения: 22
Зарегистрирован: 22.12.2011 |
|
Shirson : |
А если с арифмометром сравнить, так и в миллиарды раз Улыбка
Но сути того, что компиленый скрипт работает в два раза медленее это не меняет.
|
c++ проигрывает прямым директивам процессору и граф. процессору тоже в несколько раз, это же не повод снова переходить на асм. Юнити движок очень продвинутый, но не бесплатный, поэтому не подходит. XNA бесплатный + возможна портация под xbox, что мне нравится, а wpf вообще мультиплатформенный, особенно если делать браузерное приложение. Собственно это и была причина изначального выбора WPF - игра должна быть браузерной. Но к сожалению слишком поздно было замечено, что даже микрософтовский браузер по-умолчанию не пускает wpf browser applications запускаться, а в под хром до сих пор оболочку не написали. ну а как конечное приложение у wpf один плюс - click once развертывание - быстро и без лишней тягомотины с инсталляшкой и апдейтом клиента, что сейчас можно наблюдать в pilot3d. Сама ставится, сама качает обновления - удобно. XNA это так просто не умеет.
Tranikus : |
Я так не думаю. Нужно просто будет "управлять" нитью или траекторией (в этом и вся необычность метода, новизна) и наводить её на пересечение с целью. Для проверки надо б сворганить эту идею, потестить.
|
нить сверху снизу до или позади корабля-цели проходит не определить никак на глаз в 2д плоскости экрана
Guest : |
у так ликвидировать "хвостовые" меши, делать динамическое разбиение (если летим по прямой - зачем нам эту прямую мостить полигонами? Достаточно одного, плюс-минус, последний меш одним ребром привязывается к соплу и маскируется светом двигателя, пока разница в угле мала. Когда превышает пороговое значение - делаем ещё меш), проводить аппаратную тесселяцию...
|
общую идею понял, спасибо
а шейдер сможет отрисоваться на базе двух разных разнесенных мешей?
|
|
|
Kann 64 EGP
Рейтинг канала: 3(45) Репутация: 7 Сообщения: 232 Откуда: Москва Зарегистрирован: 11.04.2008 |
|
pilot3d : |
Юнити движок очень продвинутый, но не бесплатный, поэтому не подходит.
|
даже в бесплатной версии Юнити, качество картинки будет наголову выше чем есть сейчас у вас.
|
|
|
Kann 64 EGP
Рейтинг канала: 3(45) Репутация: 7 Сообщения: 232 Откуда: Москва Зарегистрирован: 11.04.2008 |
|
Shirson : |
)
Но сути того, что компиленый скрипт работает в два раза медленее это не меняет.
|
это справедливо для Юнити, но не для XNA, Юнити использует JIT-компиляцию, тоесть компилирует нужный код из MSIL в машинный на лету во время выполнения программы, в тоже время в XNA возможно использовать прекомпиляцию, то есть код будет скомпилирован в машинный во время первого запуска, либо вообще при установке инсталятором...
|
|
|
Tranikus 93 EGP
Репутация: 23 Сообщения: 34
Зарегистрирован: 25.04.2011 |
|
Продолжаем биться над прицелом.
pilot3d : |
нить сверху снизу до или позади корабля-цели проходит не определить никак на глаз в 2д плоскости экрана
|
1. Да не определить на глаз. Но можно, в принципе, будет навести нить близ корабля, при некотором приближении немного подыграть наводчику - прилипнуть к цели. Дальше я предлагал алгоритм. Как нить пересечёт цель - появляется прицел на цели, не давая мыши сдёрнуться, т.е. реализовать сглаживание движений мыши на цели.
2. Ещё один алгоритм прицела.
Кораблик будет управляться не мышью, а кейбоардом ADWS или переключение режимов ввести, как в некоторых игрушках кнопкой мыши, прицеливание сделать мышью. Да так, что как только игрок наводит курсор на цель - появляется прицел и бластер наводиться туда же - можно стрелять. Независимо от поворота корабля. Т.е. пушки будут тогда у всех кораблей обладать наводкой, а не тупо торчать вперёд. Почти так, к примеру, в X3 сделано.
_________________ Сквозь Звёзды мчится фантазия. Она материальна, т.к. материальны все мысли. |
|
|
Shirson 1605 EGP
Рейтинг канала: 7(626) Репутация: 219 Сообщения: 16511 Откуда: 79°W 44°N Зарегистрирован: 29.01.2002 |
|
pilot3d : |
c++ проигрывает прямым директивам процессору и граф. процессору тоже в несколько раз, это же не повод снова переходить на асм.
|
А я и не зову на него преходить. Я усомнился в словах DIMOSUS.X конкретно о том, что C# почти сравнялся по скорости с C++.
А вот ты явно на что-то другое взялся отвечать. На какие-то свои глубинные мысли
Цитата: |
Юнити движок очень продвинутый, но не бесплатный, поэтому не подходит.
|
Не Pro версия Unity бесплатна, причём насквозь - даже для коммерческого использования, с нулевыми роялити. Причём мощей и возможностей у неё откровенно дофигищая. И под веб она себе вполне компилет. А еще под Мас, iOS и Android (если акция еще не кончилась).
_________________ У меня бисера не доxеpа.
Последний раз редактировалось: Shirson (02:59 27-04-2012), всего редактировалось 2 раз(а) |
|
|
Shirson 1605 EGP
Рейтинг канала: 7(626) Репутация: 219 Сообщения: 16511 Откуда: 79°W 44°N Зарегистрирован: 29.01.2002 |
|
Kann : |
это справедливо для Юнити, но не для XNA, Юнити использует JIT-компиляцию, тоесть компилирует нужный код из MSIL в машинный на лету во время выполнения программы, в тоже время в XNA возможно использовать прекомпиляцию, то есть код будет скомпилирован в машинный во время первого запуска, либо вообще при установке инсталятором...
|
Интересно. А какие сложности вызывает предварительная компиляция байткода в машинный? Всмысле, почему в том же Unity так не делают, а сначала компилят в dll, а потому jit в машинный?
_________________ У меня бисера не доxеpа. |
|
|
DIMOSUS.X 995 EGP
Рейтинг канала: 4(67) Репутация: 188 Сообщения: 3252 Откуда: Vilnius/Minsk Зарегистрирован: 06.08.2008 |
|
Смотрел статью, в которой сравнивали XNA с чистым DirectX и С++ на примере одних и тех же демок - отставание было процентов 10.
_________________ Даже ежики ежиков могут с трудом,
Иначе бы ежики были кругом. |
|
|
|
|
|
Канал Игры Мечты: «Новая отечественная онлайн космическая игра Pilot3D» |
|