Comments 142
Хорошая демка. На телефоне выглядит феерично, как будто в рекламном ролике снимаешься. Единственное замечание — нужно запретить уходить в сон, чтобы подсветка экрана не выключалась.
Спасибо. Как-то об этом забыл. И ориентацию экрана выставил жёстко, и обработчики правильные выставил. Скоро поправим :)
Кстати, какой у Вас телефон? Я тестировал на Galaxy S, Galaxy Tab, Desire, Desire HD, Sensible и некоторых других (пока ещё не анонсированных) девайсах от HTC.
Galaxy S i9003. На нем все сразу заработало без подтормаживаний и рассинхронизации. Могу еще на гораздо менее шустром устройстве (Zenithink ZT-180 1й ревизии) попробовать запустить.
Попробуйте, интересно узнать результат.
На Zenithink Zt-180 v2 — первый раз около 4-10 кадров в секунду, второй раз — не пробывал.
На ZT-180 первой ревизии — слайдшоу с переменным fps. На глаз — от 5 до 20.
Но это сразу было понятно, не гигагерцами надо мериться (у меня оба устройства гигагерцовые), а особенностями разных поколений ARM-процессоров.
Но это сразу было понятно, не гигагерцами надо мериться (у меня оба устройства гигагерцовые), а особенностями разных поколений ARM-процессоров.
На HTC Magic (CM6) идёт. Но на особо загруженных сценах подтормаживает (видио + звук) :(
Да и еще последние титры обрезались. Две первые строчки нормально, в третьей образалось первое и последнее слово, а четвёртая вообще на половину порезалось.
П.С. Знаю я владелец очень редкого динозавра :)
Да и еще последние титры обрезались. Две первые строчки нормально, в третьей образалось первое и последнее слово, а четвёртая вообще на половину порезалось.
П.С. Знаю я владелец очень редкого динозавра :)
На планшете Galaxy Tab выглядит здорово.
Но при генерации фракталов (это ведь фракталы?) подтормаживает, не смотря на то, что у меня 1.4 Ггц.
Но при генерации фракталов (это ведь фракталы?) подтормаживает, не смотря на то, что у меня 1.4 Ггц.
Вы про снежинку? Да, это фракталы. Подтормаживает, наверное, из-за «прогрева» JIT-а. Попробуйте перезапустить, а я подумаю, что там можно ещё соптимизировать.
У меня система 2.2.1. JIT там не особо шустрый, но вторым запуском как будто не тормозит.
Автор говорит, что оно написано на c++, причём тут JIT?
Хе, а у меня на Tabе снежинка не тормозила, а во всяких аля-плазмах и туннелях, бывали эпизодические лаги… ИМХО, TAB пытается понизить частоту что бы сберечь батарейку.
здорово, только экран гаснет, телефон думает что он ничего неделает. на HTC Desire на кубиках пропадает звук.
Desire S тормозов не обнаружено
Galaxy S — выглядит потрясающе. Исходники показывать не планируете?
А на youtube видео залить? =)
Она кстати под NDK или нативная ява?
Она кстати под NDK или нативная ява?
«Our intro runs better in realtime than on YouTube»
Нормальная практика всегда дублировать видео к релизу, это уже много лет, со времен популярности youtube =)
уже записываю, осталось только пережат и выложить :)
Слушай, отлично получилось, видео посмотрел! Если на девайсе приличный FPS, то очень ок даже. Не хватает арта, дизайна, оригинальной музыки и можно на demoparty отправлять =)
Поддерживаю, посмотреть хоцца, но ни того ни другого нет.
эффекты на C++ через NDK, отрисовка через Java.
Было бы неплохо увидеть статью с объяснением исходников.
Слово «демосцена» или просто «сцена» применяется только к сообществу людей, демосценеров. Программа же называется просто «демо» или «демка».
мне кажется это отсылка к известной фразе «смотрите демосцены» :)
Ну так я же и пишу: «демка». А название топика говорит о причастности к демосцене.
Не у всех есть девайс на андроиде, а посмотреть хочется! Есть варианты?
В сообщении явно указана ссылка на Win32-версию.
Это прекрасно, но если бы вы залили видео на Youtube, то было бы еще лучше — во-первых, не у всех Windows, во-вторых, не у всех он под рукой прямо сейчас)
А под MacOSX есть варианты?
На HTC Legend — полет нормальный
Acer Liquid — нормалек! :)
Здорово! Выглядит потрясающе на моем Google Nexus S. Было бы очень интересно послушать как все это сделано, возможно посмотреть исходник.
А что такое блиттинг?
Только проблема с отрубанием программы. Во время просмотра зазвонил телефон, но прога не остановила свою работу и звук не отрубился, так что пришлось просить звонившего перезвонить когда я выключу программу.
В списке запущенных программ ее тоже не было. Она была в списке «закэшированных» по словам моего нексуса. После убийства программы звук прекратился и я смог позвонить.
А что такое блиттинг?
Только проблема с отрубанием программы. Во время просмотра зазвонил телефон, но прога не остановила свою работу и звук не отрубился, так что пришлось просить звонившего перезвонить когда я выключу программу.
В списке запущенных программ ее тоже не было. Она была в списке «закэшированных» по словам моего нексуса. После убийства программы звук прекратился и я смог позвонить.
Я мог бы сделать серию статей про каждый эффект. Завтра, может, и начну.
1) Блиттинг — это копирование области памяти. В основном так называют процесс отрисовки методом копирования одного участка памяти (напирмер, изображения спрайта) в другое
2) С отрубанием скоро пофикшу.
3) Демка убивается сама себя после завершения или выхода, так что в процессах вы её не найдётся :)
2) С отрубанием скоро пофикшу.
3) Демка убивается сама себя после завершения или выхода, так что в процессах вы её не найдётся :)
блиттинг от слова blt, а ещё точнее от основной функции 2D-анимации — BITBLT, что является сокращением от BIT BLock Transfer
LG Optimus — «Force close», к сожалению.
Под порт Windows есть проблема: запускаю -> черный экран (решение этой проблемы знаю) -> закрываю -> скрывается окно, но процесс висит и играет музыка.
На Nexus S c 2.3.4 без томозов.
А откуда у вас 2.3.4?
Так с неделю назад уже сорцы дали. Даже на Дизайре у меня уже 2.3.4 (CM7, доступно ещё для пары десятков устройств).
Привет от ценителей farbrausch! :)
Демка fr-08 .the .product в 2000 году изменила как минимум одну судьбу.
Демка fr-08 .the .product в 2000 году изменила как минимум одну судьбу.
Мою изменила ещё Stash от The Black Lotus в далёком 1998м.
fr-041: debris. на 180кб и pno0001.exe (не знаю названия, на 98кб, полноценная 3д-игра) постоянно с собой на флешке, не перестаю удивляться :)
.kkrieger называется, и не 98, а 96кб (=
з.ы. по ссылке есть ссылка на видео, как делалась игра, как генерился контент, смотреть обязательно.
з.ы. по ссылке есть ссылка на видео, как делалась игра, как генерился контент, смотреть обязательно.
С точки зрения программиста вызывает уважение. С точки зрения зрителя — не впечатлило. Просто набор различных эффектов без общей идеи, да и не великой красоты.
Минусуйте.
Минусуйте.
Ха, как раз недавно обзавёлся гуглофоном и во время очередного мозгового штурма на тему «что я ещё могу выжать из новой игрушки» подумалось, что на телефонах явно не хватает демосцены:)
Да, я за продолжение и развитие темы:)
Да, я за продолжение и развитие темы:)
HTC Hero — приложение неожиданно остановилось =(((
На фоне этого было бы очень интересно посмотреть на youtube
На фоне этого было бы очень интересно посмотреть на youtube
Прекрасно на SGS и SGTab, и вот на LG Optimus One(2.2) — тормоза страшные.
Установил на HTC Hero (Android 2.1.1)
Установка прошла нормально. Запустить, к сожалению, не удалось:
Установка прошла нормально. Запустить, к сожалению, не удалось:
E/AndroidRuntime( 7080): Uncaught handler: thread main exiting due to uncaught exception
E/AndroidRuntime( 7080): java.lang.UnsatisfiedLinkError: Library AndroidDemoscene not found
E/AndroidRuntime( 7080): at java.lang.Runtime.loadLibrary(Runtime.java:489)
E/AndroidRuntime( 7080): at java.lang.System.loadLibrary(System.java:557)
E/AndroidRuntime( 7080): at com.gosu.one.NativeSceneManager.loadNativeLibrary(NativeSceneManager.java:44)
E/AndroidRuntime( 7080): at com.gosu.one.Loader.start(Loader.java:14)
E/AndroidRuntime( 7080): at com.gosu.one.MainActivity.onCreate(MainActivity.java:17)
E/AndroidRuntime( 7080): at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1047)
E/AndroidRuntime( 7080): at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2544)
E/AndroidRuntime( 7080): at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2621)
E/AndroidRuntime( 7080): at android.app.ActivityThread.access$2200(ActivityThread.java:126)
E/AndroidRuntime( 7080): at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1932)
E/AndroidRuntime( 7080): at android.os.Handler.dispatchMessage(Handler.java:99)
E/AndroidRuntime( 7080): at android.os.Looper.loop(Looper.java:123)
E/AndroidRuntime( 7080): at android.app.ActivityThread.main(ActivityThread.java:4595)
E/AndroidRuntime( 7080): at java.lang.reflect.Method.invokeNative(Native Method)
E/AndroidRuntime( 7080): at java.lang.reflect.Method.invoke(Method.java:521)
E/AndroidRuntime( 7080): at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:860)
E/AndroidRuntime( 7080): at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:618)
E/AndroidRuntime( 7080): at dalvik.system.NativeStart.main(Native Method)
Зациклить бы ее. Стоит рядом андройдная приставка для телевизора от китайских товарищей, вполне можно было демку использовать в качестве «скринсейвера».
htc HD2, android 2.2.1. Работает отлично.
На Viewsonic GTablet (разогнаном) работает отлично. Спасибо.
Просто отличная идея! Вот она, новая жизнь демо-сцены! :)
Напишите про алгоритмы, очень хотелось бы почитать об этом.
Samsung galaxy spica CM 6.1.1 — работает отлично, как это ни странно для этого аппарата, только титры не влезают.
на LG GT540 вылетает(
На Highscreen Cosmo нормально летает. Ждём ещё демок от вас!
На Sony Ericsson X10 не запустился, вылетел с FC
Отлично! Выражаю автору респект. Особо сложных эффектов не увидел, точно такую же дему могу крутить в 320x200 на iP 133 Mhz вообще без тормозов. В том числе и фракталы (по таблицам ес-сно). Хотя в андройде вроде же ява, поэтому да, хороший результат.
Для примера, я вот баловался с Vogue-плеером (проц — mips ~450 Mhz):
www.youtube.com/watch?v=n4QLd8uGxgM
www.youtube.com/watch?v=kZM_so_r4Pw
На fps не обращайте внимание, я там стормозил и обновлял буфер по два раза на кадр. Поэтому фпс там как минимум выше раза в два. Потом исправил, просто переснимать лень. А вообще, ценю работу. Твердый зачет!
Для примера, я вот баловался с Vogue-плеером (проц — mips ~450 Mhz):
www.youtube.com/watch?v=n4QLd8uGxgM
www.youtube.com/watch?v=kZM_so_r4Pw
На fps не обращайте внимание, я там стормозил и обновлял буфер по два раза на кадр. Поэтому фпс там как минимум выше раза в два. Потом исправил, просто переснимать лень. А вообще, ценю работу. Твердый зачет!
такую же дему могу крутить в 320x200 на iP 133 Mhz
В том-то и дело, что нынешние ARM-процессоры недалеко ушли от уровня Pentium 2 с 400 MHz.
Но, во-первых, разрешение, на котором выдаётся 30 fps (бывает и чуть-чуть больше) — 800x480 (В 6 раз больше пикселей, нежели в Вашем варианте), а во-вторых, как я написал в топике, самым узким местом была отрисовка средствами Java. Думаю всё-таки перенести всё в нейтив — должно просто залетать даже на пылесосах =).
Сами эффекты написаны на C++, безо всяких OpenGL с ускорителями. Написанные на Java, они дают примерно в 2-3 раза меньшую частоту кадров, что неприемлемо.
Про разрешение экрана просто не знал, сорри. Да, 800x480 уже трудновато блюрить в реалтайме на iP 133, согласен. Про Джаву я все понимаю, тут не нужно комментариев. То, что без всякого OpenGL я тоже вижу. Но крутить кубики с текстурой я могу хоть на арифмометре (правда не реалтайм).
Ваще круто получилось, хорошая работа. Мои поздравления!
Ваще круто получилось, хорошая работа. Мои поздравления!
Для меня всё соль кубиков в том, что собственноручно написал перспективно-корректно текстурирование примитивов со сглаживанием и освещением на процессоре. Это была, наверное, самая сложная задача в плане производительности.
BTW, переспективно-корректное текстурирование (если конечно мы говорим об одном и том-же) — тот еще тормоз. Я бы для данного случая (для данной демы) обошелся простым афинным текстурированием. Скорость в разы быстрее, качество конечно хуже, но для данной сцены (кубы) — вполне сгодилось бы.
А что это за устройство такое? Выглядит ну очень по-промышленному.
А это декабарьский(?) номер дамского журнала Vogue вышел со встроенной видео-рекламой. Открываешь страничку и начинается крутиться реклама Мартини. Суть в том, что внутренности — по сути обычный китайский аудио-видео плеер.
32 метра памяти, проц Ingenic JZ4725B 360Mhz (в последствии догнатый до 450Mhz).
Изначально в нем стояла урезанная прошивка, которая только и могла что крутить один залитый в него видео-файл. Потом я списался с китайцами и заполучил исходники нормальной прошивки, со всеми функциями. Собрали, настроили под нашу аппаратную часть и получили полноценный видео-аудио плеер за 120 руб (примерно столько стоил сам журнал).
Тут подробнее про хардварную часть: vogeeky.co.cc/hardware
Ну и вообще, в целом по этому девайсу: vogeeky.co.cc/
32 метра памяти, проц Ingenic JZ4725B 360Mhz (в последствии догнатый до 450Mhz).
Изначально в нем стояла урезанная прошивка, которая только и могла что крутить один залитый в него видео-файл. Потом я списался с китайцами и заполучил исходники нормальной прошивки, со всеми функциями. Собрали, настроили под нашу аппаратную часть и получили полноценный видео-аудио плеер за 120 руб (примерно столько стоил сам журнал).
Тут подробнее про хардварную часть: vogeeky.co.cc/hardware
Ну и вообще, в целом по этому девайсу: vogeeky.co.cc/
Тот самый номер, про который писали здесь? Крутотень!
Ну Бумбурум-овский топик получился не столь эпичный, как топик первопроходцев: habrahabr.ru/blogs/DIY/108917/ Тыща каментов как-никак )) Но да, это тот самый номер.
Когда я наигрался с демками и чуть-чуть освоился в чуждой мне системе реального времени, я портанул NES-овский эмулятор для него. Затем ребята с комунити подпаяли дендиевский джойстик и получилась переносная денди )) Вот так примерно это выглядит:
www.youtube.com/watch?v=eX9o2FtoaSY
Замечу, что все это я делал с недружественным языком Си (всю жизнь прогал на паскале). Но экспириенс получил хороший. После проделанного могу сказать, что я чуть-чуть познакомился с новым языком программирования Си.
Когда я наигрался с демками и чуть-чуть освоился в чуждой мне системе реального времени, я портанул NES-овский эмулятор для него. Затем ребята с комунити подпаяли дендиевский джойстик и получилась переносная денди )) Вот так примерно это выглядит:
www.youtube.com/watch?v=eX9o2FtoaSY
Замечу, что все это я делал с недружественным языком Си (всю жизнь прогал на паскале). Но экспириенс получил хороший. После проделанного могу сказать, что я чуть-чуть познакомился с новым языком программирования Си.
А мне после Паскаля (в школе пару лет олимпиады писал) Си показался просто мёдом в плане возможностей. Паскаль научил, что писать надо аккуратно и структурированно, а Си дал в тысячу раз больше возможностей.
Си мне тоже очень понравился. Очень гибкий язык, не нужно городить тонны бегин-эндов и подобных конструкций. Писать на нем одно удовольствие. Но увы, для меня пока чуть шаг в сторону — гугл. Поэтому конечно продолжаю кодить на паскале. Именно «кодить» — я понимаю под этим словом когда пишешь, не задумываясь над синтаксисом языка, просто кодируешь сами алгоритмы. Паскаль мой третий язык программирования (первый был ассемблер x86, второй — бейсик), и я на нем всю жизнь кодю (уже лет 17 как). Но си мне очень понравился, планирую продолжить его изучение. Сейчас вот, например, делаю распозновалку различных штрих-кодов на Visual C. Трудно конечно, но дело продвигается )
HTC Hero 633 MHz 2.3.3.подтормаживает, но идёт. Звук иногда пропадает.
на SE Xperia x8 даже не запускаеццо: Произошла неожиданная остановка приложения com.gosu.one. (процесс com.gosu.one). Повторите попытку
У коллеги на SE x10 то же самое
Жаль, нету ни одного доступного девайса «на потестить». Если нетрудно, не могли бы Вы скинуть лог ошибки?
не знаю где посмотреть
«adb logcat» в консоли, скачав SDK, и установив в нём developer tools.
Можно просто «logcat > /sdcard/log.txt» на мобиле, если поставить эмулятор терминала.
Хотя, при установке приложения через Маркет, при ошибке предлагается отправить отчёт, вот это он и есть, только в автоматическом режиме.
Можно просто «logcat > /sdcard/log.txt» на мобиле, если поставить эмулятор терминала.
Хотя, при установке приложения через Маркет, при ошибке предлагается отправить отчёт, вот это он и есть, только в автоматическом режиме.
вощем после обновления — заработало
> «список демосцен»…
Демосцена — это явление (если разжевать то «сцена, на которой показывают демо», если угодно «театр для демо»), а конечный продукт называется «демо» (интро, музыка, графика и т.д.).
Демосцена — это явление (если разжевать то «сцена, на которой показывают демо», если угодно «театр для демо»), а конечный продукт называется «демо» (интро, музыка, графика и т.д.).
Nexus One 2.3.3
Картинка пропадает в середине.
Картинка пропадает в середине.
HTC Desire — всё отлично. Вообще, очень понравилось. Люблю демки ещё со времён спектрума и амиги. Как раз мобильные девайсы могут дать новый толчок этому движению. Если раньше можно было сказать — ОГО, 3.5 Мгц, а что творится-то!!!… то теперь на PC удивление вызывают вещи, разве что, типа .kkrigier и т.п. (т.е. ОГО — 98 кб, а что творится-то!!!). Поэтому — жду новых релизов :)
На планшете ViewSonic ViewPad 10s смотрится отлично, а вот на Acer Liquid уже подтормаживает.
На Google Nexus One тормоза не замечены, работает отлично
Это уже придирки, но при открытии/закрытии аппаратной клавиатуры приложение рестартует. Похоже, нужно отлавливать событие смены ориентации и клавиатуры. Добавьте в манифест для activity
Droid 2 Global, 2.2.1
android:configChanges="orientation|keyboardHidden"
Droid 2 Global, 2.2.1
Скачал, посмотрел, понравилось (#nexusone) Все пытался дотронутся до экрана — ничего не происходило.
Можно такую фичу добавить. Юзер дотрагивается то экрана и на сцену добавляется какойто элемент. Например точка или шарик. Ну и соответственно продолжает летать этот новый элемент со всеми начальными ;)
Можно такую фичу добавить. Юзер дотрагивается то экрана и на сцену добавляется какойто элемент. Например точка или шарик. Ну и соответственно продолжает летать этот новый элемент со всеми начальными ;)
На HTC Wildfire не ставится.
Sign up to leave a comment.
Демосцена на Android