Обновить
51

Погромист

15
Подписчики
Отправить сообщение
Когда человек покупает видеокарту, которая стоит как 2 XBox — он ждет, что там будет не Angry Birds, а как минимум, Far Cry N

Я согласен даже на приличный арканоид ;-)

Рынок консолей специально ограничен

Именно. Результат мы видим — сплошные тайтлы по франшизам, очередные «каловдутия» и «гири» Эн + 1.

А где шароварь DOOM? Prehistorik? Elite?

Так ведь вот что смешно — сами шаровари как класс заменяются фремиумом. Купи в нашем сторе BFG — облегчи прохождение ;-)
Зачем шароварь? Затем чтобы, я вот пишу. ;-)

Доставка только электронная, бюджет — ноль, только время трачу. На кусок сыра поверх бутерброда — самое то. Как, где, для кого — решаю лично я, а не рекламный бюджет.

И более того — мне мусорная аудитория не нужна в принципе! Если я делаю к примеру плюгин к индезигну, то мне интересны те кто найдет меня в гугле и те кто придет с форумов адоба.

100500 скачек тут в принципе быть не может — не та аудитория, не те цены, не тот сегмент. А теперь внимание — вопрос! Как это вытащить в маркетплейсе, не выкупая тонны рекламы на ключевые слова? Я вот не вижу — как 8-(

Уверен я пока что только в том, что через некоторое время моих поделий не увидит никто, т. к. я морально не готов прорываться в топы и тратить основное время и силы (и деньги) на сео. Мне это неинтересно ни в каком виде.
О да, пираты — это излюбленная отмазка издателей.

Вы хотите сделать новых героев по отлову ужасных алиенов? под мышку и клавиатуру? нет, мы вам не дадим инвестиций, вы что! тут же ужасный уровень пиратства! А вы знаете, что из-за злых пиратов предыдущих Эн, нет, Эн мало! лучше Эм предыдущих попыток провалились?

;-)
(ехидно) а что, потребителя кто-то спросил? ;-)

В кино мы наблюдаем ровно ту же картину, к слову. Но в кино есть Болливуд. А в разработке игр — есть казуальщина. И между ними — пропасть. Как так вышло?

Дело тут не в «потребитель хочет» — ну где в angry birds «реалистичная анимация» и «офигенная графика»? Нету ни того ни другого, всего лишь мода и пиар.

Просто рынок игр с бюджетом $10M санирован, чтобы не было конкурентов $100M бюджетам. Искусственно, замечу, санирован. Не без помощи консолей — превращен в высоко-рисковый рынок. Или инди в стиме — или свободен, основные сливки соберут большие дяди на франшизах, им не нужна конкуренция с сотнями независимых студий.

И возвращаясь к топику — marketplace / appstore это такая же зачистка на поле windows. Оставляя лишь ниши «c бюджетом $100k», выкидываются за борт сотни тысяч мелких разработчиков.

«Тонны шароварей» (ТМ) ранее пересекались лишь на страницах dmoz / tucows, среди тысяч и тысяч категорий на все вкусы. А будут бодаться в узком горлышке «первых надцать в топе маркетплейса».

Разработчик — индивидуал потратил пятилетку на какой-нибудь нишевый mathGL или пару лет на очередной «заменитель емакса» ABC-Editor? Он не отобьет эти вложения никогда.

Шароварь в аппсторе — встройте премиум контент в текстовый редактор или рекламу? Это покруче pkunzip.zip ;-)

Ранее продвижение продукта заключалось в «классный продукт, анонсы в каталогах и пяток статей в профильных изданиях» (я утрирую). А будет — «проплати микрософту за рекламу и купи инсталляции». Пол-бюджета отдай маркетологу.

Слава микрософту!
Виноваты как раз не консоли, а производители игр, задирающие бюджеты в небеса. Ну еще бы — motion capture от настоящей голливудской порнодивы аппаратурой от аватара! Бюджет тайтла ААА+ от $100M!

И вот получается, что на консолях 50 000 000 аудитория для очередного TFS эстониш-стайл, и 3 000 000 геймеров на PC, из которых половина скачает с торрентов, ибо «неиграбельно мышой». Рынок PC становится вторичным -> консольный порт -> меньше продаж -> еще меньше аудитория.

И смысл делать очередной UFO: XCOM или Jagged Alliance? Нишевые игры на любителя, на консолях неиграбельно => бюджетов нет.

Хорошо было DOOM делать — Ромеро и два брата Кармака сделали всю игру. Квейки делали человек шесть, из них трое — дизайнеры. Принца персии вообще один титан сделал, оцифровав в студии родного брата.

А теперь что? Титры без слез читать невозможно. Три программиста, двадцать дизайнеров, и пятьдесят продажников, тьфу. И как эту ораву прокормить? Кредитом? А кто его даст на игру с аудиторией в 500 000?

Вот и результат.
А как же angry birds? Это ж нынешний убивец будущего HL3 ;-)
Точно.

А еще есть HL2 с ее гравиганом.

Или Serious Sam (все 3 шт) с его ураганным мясом даже на «туристе». И — кооперативом, вот где олд скул ;-)

Или старый добрый Quake1/Darkplaces. Рекомендую всем любителям консолей ролик к просмотру, чтобы представлять — что такое «настоящий тракторист».

И нет — на джойстике так играть физически невозможно, слишком медленное устройство ввода. Примерно в 40(!) раз медленнее мышки.
Жаль, а я почти ожидал «если вот так три раза в бубен то окошки можно за-tail-ить слева в первой трети» ;-)
Вот прямо сейчас в двух их них общаюсь, что не так? Каждый чат в своем окошке, если что. Если каждое отдельно считать — то 7 штук открыто. Никак?
Ну, дум с квейком и старкрафтом есть. Если новые движки от Valve и Blizzard переедут на Linux — буду только рад.

Казуалок и на флэше завались, незачем всякую гадость на девайс тащить.

Из indie — разве что hacker evolution в свое время впечатлила, а так — баяны. Хотя я конечно не эксперт по инди-играм ни в коем разе, так — личные впечатления, не более.

Зашел в очередной раз в виндовый аппстор, подставил таз… в топе все те же птички, все те же фруктовые ниндзя (как заколебали и те и другие!)

Как в этот «склад херни для тупых подростков» (Ц) всунуть что-нибудь полезное, да так чтобы это кто-то увидел? А с нулевым бюджетом? А не работающее на армах, но поддерживающее итаниумы? Чешу тыковку в раздумьях — что с этим делать.

Да, очень порадовало что с Win7 в стор не попасть — типа купи виндоус чтобы посмотреть маркет, гениальная находка.
Кстати, а что делать если таких мессенджеров штуки четыре сразу? Нет, комбайны не подходят.
Мои вот то делают нечто планшеткам ненужное, то апи нативное напрямую зовут, то вообще драйвера неподписанные. В музей пора ;-)
А вы таки представьте это светлое будущее — 100500 игр по $0.99 и все с жестами, и тут вылезает этот динозавр с мышкой и за $49.99!

И главное — ни в трамвае не поиграть, ни в старбаксе не понтануться. Ибо требует ноут за $2000 на интеле и дискретное видео.

Что-то я сомневаюсь, что в среде казуалок творения Гейба станут хитами.

Уже в наличии всяческие «возвращатели кнопки пуск» за $3.99. Даже не какой-нибудь ObjectDock или WindowBlinds.

Так что я вот сижу в унынии почище Гейба — не представляю, как пропихивать в этот горе-магазин свои Win32-поделия. А ведь — придется, «нет в сторе — нет вообще», ждет нас именно это.
А возможно Гейб не готов выпускать Half-Life 3 по $0.99, с жестами вместо мышки.
Построение всяческих Value Data Printing вокруг Adobe InDesign, вдруг кому интересно. Каталоги, газеты, книги — проекты разные. Рисование plug-ins к InDesign/InCopy.
Хех, если б это было единственной проблемой. А так даже время получить — и то задача для #ifdef. Ну вот к примеру

#include "timeval.h"

#ifndef HAVE_GETTIMEOFDAY
#ifdef WIN32
#include <mmsystem.h>
static int gettimeofday(struct timeval *tp, void *nothing)
{
#ifdef WITHOUT_MM_LIB
  SYSTEMTIME st;
  time_t tt;
  struct tm tmtm;
  /* mktime converts local to UTC */
  GetLocalTime (&st);
  tmtm.tm_sec = st.wSecond;
...
  tmtm.tm_year = st.wYear - 1900;
  tmtm.tm_isdst = -1;
  tt = mktime (&tmtm);
  tp->tv_sec = tt;
  tp->tv_usec = st.wMilliseconds * 1000;
#else
  /** Time calculations using GetLocalTime had a time resolution of 10ms.The timeGetTime, part
   ** of multimedia apis offer a better time resolution of 1ms.Need to link against winmm.lib **/
  unsigned long Ticks = 0;
  unsigned long Sec =0;
  unsigned long Usec = 0;
  Ticks = timeGetTime();

  Sec = Ticks/1000;
  Usec = (Ticks - (Sec*1000))*1000;
  tp->tv_sec = Sec;
  tp->tv_usec = Usec;
#endif /* WITHOUT_MM_LIB */
  (void)nothing;
  return 0;
}
#else /* WIN32 */
/* non-win32 version of Curl_gettimeofday() */
static int gettimeofday(struct timeval *tp, void *nothing)
{
  (void)nothing; /* we don't support specific time-zones */
  tp->tv_sec = (long)time(NULL);
  tp->tv_usec = 0;
  return 0;
}
#endif /* WIN32 */
#endif /* HAVE_GETTIMEOFDAY */



Я помню в этот кусок еще быстрый способ получения времени добавлял, а то вышенарисованный для Win32 зело тормозен. Нечто вроде такого вписывал

  LARGE_INTEGER li;
  FILETIME ft;

  GetSystemTimeAsFileTime(&ft);
  li.HighPart = ft.dwHighDateTime;
  li.LowPart = ft.dwLowDateTime;
  tp->tv_sec = (long)(li.QuadPart / 10000000LL); // 10^7 as in 100ns units
  tp->tv_usec = (long)((li.QuadPart % 10000000LL) / 10);


Это Curl.
Эм, рекомендую обратиться к функции _heapmin(). Эта функция соответственно зовет HeapCompact(), которая освобождает в систему пустые страницы из хипа. Обратите внимание — не все выделенное, а только те страницы, которые не содержат выделенных кусочков.

Как подсказывает мне мой склероз, это известная шутка микрософтовских программистов под названием «память в системе бесконечна», и существует она с начала времен. В NT 3.5 уже было именно такое поведение, емнип.
Вот тут написано следующее:

When accessing the auto-increment counter, InnoDB uses a special table-level AUTO-INC lock that it keeps to the end of the current SQL statement, not to the end of the transaction. The special lock release strategy was introduced to improve concurrency for inserts into a table containing an AUTO_INCREMENT column. Nevertheless, two transactions cannot have the AUTO-INC lock on the same table simultaneously, which can have a performance impact if the AUTO-INC lock is held for a long time. That might be the case for a statement such as INSERT INTO t1… SELECT… FROM t2 that inserts all rows from one table into another.

Фактически, это означает что все bulk inserts бодренько выстраиваются в очередь на table lock — per statement, и не особенно то и спасает, что лок в журнал не попадает. Емнип fast mutex прикрутили только в 5.1.

А теперь представьте себе картинку, что это счастье идет в конкурентных транзакциях в параллель, что в транзакции таких инсертов не один, и получим весьма существенный penalty.
А как вам (не шучу!) такие перлы со стороны заказчиков?

0. Подвиньте вот эту надпись на полсантиметра. Какие пиксели? Откуда взял? Я линейкой померял, поднес к своему 30" монитору пластиковую линейку и ей померял! Ну что за хрень — вам понадобилось пять итераций пока сумели отмерить линейкой! Чем вы там вообще занимаетесь?

1. У вас в дереве когда ветка закрыта — плюсик нарисован. А надо — минусик! И мне плевать, что у всех остальных так же, у нас будет лучше. Юзеры поймут, я же понимаю!

2. Вот тут у вас выбор одного из нескольких вариантов (радиогруппа). А чего это у вас вместо галочек кружочки?! Ну вот рядом же галочка в квадратике (чекбокс). Сделайте так же. Никто не запутается, чего вы ввзяли!

3. Молодцы. Сделали. Теперь у вас множественный выбор (чекбоксы) и один из нескольких (радиобатоны) — выглядят одинаково. Это ж вообще непонятно стало! Сделайте мне чтобы когда одиночный переключатель — было кругленьким, ну как до исправлений. Что? Виды чекбокса и радиобатонов поменяются vice versa? Юзеры не поймут? Чего вы со своими юзерами пристали?! У нас они не такие тупые как вам кажется!

4. Почему у вас на формочках такой унылый серый фон? Надо сделать красиво! Что значит "какого цвета"? Как мои гламурные розовые штаны! Что значит какой RGB?! Розовые! А вы что нарисовали? Это цвет задницы а не штанов!

5. Вчера я своим топ-топам показывал вашу демонстрацию. Отлично прошло. Но! Когда я напечатал ее на бумагу, чтобы раздать памятки, то на бумаге анимация не работала! Что значит «невозможно» — на экране же есть!

6. Вы пишете что архиважную фичу вы не смогли сделать так как я вам забыл рассказать что это. Это что — реально повод был эту фичу не делать?!

7. Что значит «почему не отвечаете на емейлы третью неделю»? Футбол смотрю. И вообще, если я хоть час поработаю как вы просите, вы потом месяц будете плакать всей командой, лучше не надо. Да, и какой гад поставил моего босса в СС? Я по ошибке нажал reply all и он меня теперь хочет уволить! Сатрап, считает что футбол надо смотреть не в рабочее время. Некоторое время не буду отвечать — занят в профкоме, надо чтобы не уволили.

Вот это были — реальные демотиваторы.
(пугается)

Setting HEAP_NO_SERIALIZE eliminates mutual exclusion on the heap. Without serialization, two or more threads that use the same heap handle might attempt to allocate or free memory simultaneously, which may cause corruption in the heap.

Я же имел в виду нечто вот такое, которое вполне себе lock-free thread-safe.

Впрочем, таких реализаций несколько, эта мне сейчас первая в гугле попалась.

Информация

В рейтинге
Не участвует
Откуда
München, Bayern, Германия
Дата рождения
Зарегистрирован
Активность