Результаты поиска
| |
Archido | Дата: Пятница, 01 Августа 2014, 00:45 | Сообщение # 81 | Тема: Что лучше всего приобрести за 7000-10000грн? |
Сэнсэй
Сейчас нет на сайте
| Цитата Vinchensoo ( ) А-то рассуждения из разряда "не буду покупать макбук за 50к, куплю лучше жигули". Хы, значит Мак ОС любой жигуль превратит в мерседес?:)
Цитата Vinchensoo ( ) Ноут для рендеринга? Серьезно? Почему обязательно для рендеринга? Игровое моделирование никто не отменял, в чем проблема на ноуте работать? Не вижу проблемы. В добавок можно подрубить внешний монитор и много чего полезного на него вывести.
P.S. А в целом, "мак или не мак" - скорее вопрос религии \ личных предпочтений, в большинстве случаев. Все как всегда. Нужно лично опробовать и то и другое, сравнить, и тогда все станет ясно.
C++ - он особенный. С помощью него можно не только выстрелить себе в ногу, но и повеситься в пустой комнате:)
|
|
| |
Archido | Дата: Четверг, 31 Июля 2014, 04:51 | Сообщение # 82 | Тема: Что лучше всего приобрести за 7000-10000грн? |
Сэнсэй
Сейчас нет на сайте
| Цитата maker-rus ( ) IOS - для Iphone/Ipad MAC OS - для пк,ноутов. Да ну, правда что ли? Слона то я и не приметил.
C++ - он особенный. С помощью него можно не только выстрелить себе в ногу, но и повеситься в пустой комнате:)
|
|
| |
Archido | Дата: Четверг, 31 Июля 2014, 03:41 | Сообщение # 83 | Тема: Что лучше всего приобрести за 7000-10000грн? |
Сэнсэй
Сейчас нет на сайте
| Лол, какой макбук за 30к рублей?:) Мак нужен когда нужна ios или есть много лишних денег, в остальных случаях можно вполне успешно обойтись и без него.
C++ - он особенный. С помощью него можно не только выстрелить себе в ногу, но и повеситься в пустой комнате:)
|
|
| |
Archido | Дата: Вторник, 29 Июля 2014, 08:49 | Сообщение # 84 | Тема: Учет попадания в голову, Photon Server, Защита от читов |
Сэнсэй
Сейчас нет на сайте
| Цитата robertono ( ) Решение должно быть так же безопасным от читеров Если хоть какая-то логика исполняется на клиенте, то проще забыть о читерах и не забивать себе голову:)
C++ - он особенный. С помощью него можно не только выстрелить себе в ногу, но и повеситься в пустой комнате:)
|
|
| |
Archido | Дата: Пятница, 18 Июля 2014, 16:36 | Сообщение # 85 | Тема: Компиляция под Android (вопрос в сообщении #8) |
Сэнсэй
Сейчас нет на сайте
| Цитата Saitei ( ) Я знаю и кучу других языков, но это не означает, что я тру программист Ну да, судя по этой фразе ты уже тонко намекаешь на это Но речь ведь не об этом, в целом я тоже согласен с мыслью товарища Folleah'a, что программист такая профессия, где гугл и доки - твои лучшие друзья. Вопросы подобного характера (т.н. "общие") быстрее нагуглить, чем тратить время на создание темы и ожидание ответа, а с ростом потребностей и твоего уровня - форум едва ли сможет тебе помочь, даже гугл не всегда сумеет... другое дело доки
Мысль в кратце - старайся учиться добывать информацию самостоятельно. Просто совет
Цитата Saitei ( ) Программист - это тот, кто придумывает алгоритмы, а кодер - это тот, кто готовые алгоритмы переписывает на языке программирования. Программистом можно быть даже не имея в наличии ПК. А это все от лукавого.
C++ - он особенный. С помощью него можно не только выстрелить себе в ногу, но и повеситься в пустой комнате:)
|
|
| |
Archido | Дата: Вторник, 10 Июня 2014, 20:53 | Сообщение # 86 | Тема: Написание простого игрового движка |
Сэнсэй
Сейчас нет на сайте
| Цитата Xakep ( ) а ты думаешь как выделается память когда пишутся свои аллокаторы? все тем же malloc/new, только выделяется сразу болльшой блок памяти, и уже его используют для быстрого "выделения". В большенстве случаев, производительность зависит от алгоритма, если уж мало производительности от malloc, то просто напросто нужно подумать как организовать правильно выделение, а не страдать ерундой, и писать свои аллокаторы памяти. В последнем случае, скорее всего будет очень много ошибок и утечек памяти, из-за малейшей ошибки в коде, и потом думай гадай, где же ты допустил ошибку, а конце концов оказывается, что это вообще из-за собственного аллокатора памяти. Ну как же ты так - взял все ерундой обозвал
В винде, например, вызов malloc \ new дергает HeapAlloc, а тот в свою очередь VirtualAlloc и "выделение памяти" делается в kernel mode, происходит переключение т.н. контекстов, что не бесплатно совсем. Т.е. переключать контекст на каждый чих при необходимости выделить память - это полнейший rock'n'roll, так делать не красиво. Многие делают пулы и правильно делают, правда они и представляет собой вообщем-то простейший локальный аллокатор (а группа таких пулов представляет собой некий децентрализованный глобальный аллокатор).
Глобальные аллокаторы делают в основном не из-за проблем со скоростью выделения памяти (т.к. это можно и без них решить, локально), а из-за проблем с чрезмерной фрагментацией. ОС аллокатор будет тупо выделять блок за блоком (большой после маленького и наоборот), в результате через какое-то время после циклов выделения \ удаления: памяти не останется совсем, точнее она то будет, но сильно фрагментированная и размазанная по всему возможному диапазону. Свой аллокатор позволяет сделать несколько различных стратегий выделения памяти (для маленьких и больших объектов, частого \ нечастого выделения, раз в кадр, etc) и выбирать конкретную стратегию на основе определенных факторов, вроде размера или некоего доп. флажка, где вы явно подсказываете аллокатору что выбрать, т.к. знаете что лучше будет работать для объектов данного типа, и т.д. В добавок, в критических местах, можно использовать двойные указатели и научить аллокатор делать дефрагментацию в отдельном потоке. Правда это все, скорее уже менеджер памяти, а не просто какой-то там аллокатор Как бонус - инфа (статистика) о кол-ве используемой, выделенной, фрагментированной памяти, о размерах выделенных блоков (или объектов), etc. Что весьма полезно и позволяет в дальнейшем производить коррекцию.
Само собой все это - не панацея и делать такое имеет смысл только тогда, когда это реально нужно. Скажем, для "тетриса" и ПК с 12ГБ ОЗУ можно и забить, а вот например все крупные игры для Xbox 360 без своего менеджера памяти не обходятся, ибо с 512мб шибко с фрагментацией там не разгуляешься. К мобильным платформам это тоже относится.
P.S. А еще часто пригождаются т.н. "выравнивающие" аллокаторы
C++ - он особенный. С помощью него можно не только выстрелить себе в ногу, но и повеситься в пустой комнате:)
|
|
| |
Archido | Дата: Среда, 05 Февраля 2014, 20:54 | Сообщение # 87 | Тема: Delphi-программист в молодую команду разработчиков. |
Сэнсэй
Сейчас нет на сайте
| Kozyr Вы уверены, что вам здесь нужен именно DS? Юзабельная реализация его не так то и тривиальна. Из недостатков - толстый G-Buffer, проблемы с прозрачностью и материалами (т.е. из BRDF по сути доступен только Phong), частично есть проблемы с АА (хотя это уже не так актуально, на 4-ром ОГЛе проблем не будет). Можно сделать вполне сносное освещение на LightMap'ах (для статики) + 2-3 Forward близжайших дин. источника (В UE3 так, например), главное при этом правильно менеджить сцену.
C++ - он особенный. С помощью него можно не только выстрелить себе в ногу, но и повеситься в пустой комнате:)
|
|
| |
Archido | Дата: Вторник, 04 Февраля 2014, 17:06 | Сообщение # 88 | Тема: Проблема с блокированием поверхности |
Сэнсэй
Сейчас нет на сайте
| Советую быстро забить на DirectDraw и изучать как минимум Direct3D9 или OpenGL 2.0 \ 3.0
C++ - он особенный. С помощью него можно не только выстрелить себе в ногу, но и повеситься в пустой комнате:)
|
|
| |
Archido | Дата: Понедельник, 20 Января 2014, 10:40 | Сообщение # 89 | Тема: Проблема при использовании KeyboardState |
Сэнсэй
Сейчас нет на сайте
| Покажи где oldState объявляешь.
C++ - он особенный. С помощью него можно не только выстрелить себе в ногу, но и повеситься в пустой комнате:)
|
|
| |
Archido | Дата: Понедельник, 20 Января 2014, 10:27 | Сообщение # 90 | Тема: Проблема при использовании KeyboardState |
Сэнсэй
Сейчас нет на сайте
| Ну, тогда можно добавить некий глобальный "oldState" и сделать что-то вроде этого:
Код state = Keyboard.GetState();
if (state.IsKeyDown(Keys.Space) && oldState.IsKeyUp(Keys.Space)) { items[currItem].OnClick(); } oldState = state;
C++ - он особенный. С помощью него можно не только выстрелить себе в ногу, но и повеситься в пустой комнате:)
|
|
| |
Archido | Дата: Понедельник, 20 Января 2014, 10:11 | Сообщение # 91 | Тема: Проблема при использовании KeyboardState |
Сэнсэй
Сейчас нет на сайте
| Если это XNA, то там было нечто вроде "IsKeyPress"
C++ - он особенный. С помощью него можно не только выстрелить себе в ногу, но и повеситься в пустой комнате:)
|
|
| |
Archido | Дата: Воскресенье, 19 Января 2014, 18:27 | Сообщение # 92 | Тема: Оптимизация игры |
Сэнсэй
Сейчас нет на сайте
| На более маленькие не нужно разбивать, нужно наоборот как можно больше спрайтов собирать в одну текстуру (атласы), тогда батчинг (если он есть) будет эффективнее работать и меньше переключатся стейты. А вообще, если используется нормальный движок, то для 2Д тут особо нечего придумывать - все основное должно быть сделано на уровне движка. По каким-то конкретным вещам стоит чиатать доки по движку + профильные форумы.
C++ - он особенный. С помощью него можно не только выстрелить себе в ногу, но и повеситься в пустой комнате:)
|
|
| |
Archido | Дата: Воскресенье, 19 Января 2014, 18:19 | Сообщение # 93 | Тема: GLSL - Нормали и матрицы |
Сэнсэй
Сейчас нет на сайте
| Что-то там странное творится во фрагментном шейдере, на основе чего там строится освещение? Взял бы классического Ламберта + Фонга для попиксельного освещения. Что, касается нормалей то нужно помножить их на glNormalMatrix = transpose(inverse(ModelViewMatrix));
C++ - он особенный. С помощью него можно не только выстрелить себе в ногу, но и повеситься в пустой комнате:)
|
|
| |
Archido | Дата: Суббота, 18 Января 2014, 16:58 | Сообщение # 94 | Тема: Оптимизация игры |
Сэнсэй
Сейчас нет на сайте
| black_house Если тема находится в правильном разделе и ты все пишешь сам, то можно сделать несколько вещей. Собрать кучу маленьких текстур в одну большую (используем атласы) + добавить этим текстурам поддержку аппаратного сжатия, пытаться как можно меньше переключать стейты пайплайна (рисовать как можно больше с одной установленной текстурой, например), т.е. нужна сортировка по текстурам, далее пытаться уменьшать количество DrawCalls (собирая как можно больше геометрии в буфер + сортировка по буферам для уменьшения их переключения). Ну и рисовать и апдейтить только то, что видно на экране Это из основного.
Update: Добавлю еще, что альфа тест и \ или блендинг в мобильных девайсах, особенно в больших количествах - очень хорошо кушает весь доступный филлрейт, что в итоге приводит к просадке фпс.
C++ - он особенный. С помощью него можно не только выстрелить себе в ногу, но и повеситься в пустой комнате:)
Сообщение отредактировал Archido - Суббота, 18 Января 2014, 17:01 |
|
| |
Archido | Дата: Четверг, 16 Января 2014, 14:13 | Сообщение # 95 | Тема: Чистое 3D написанное своими руками |
Сэнсэй
Сейчас нет на сайте
| Что в твоем понимании есть "чистое 3D" ?:)
C++ - он особенный. С помощью него можно не только выстрелить себе в ногу, но и повеситься в пустой комнате:)
|
|
| |
Archido | Дата: Вторник, 14 Января 2014, 17:21 | Сообщение # 96 | Тема: Вопрос-Ответ (C++) |
Сэнсэй
Сейчас нет на сайте
| Цитата Destroy ( ) а как выделять память если длинна каждого слова разная? А в чем проблема? Можно для каждой указать конкретно сколько нужно, но проще забить на это и выделить под все строки одинаковое кол-во памяти с запасом, например в 256 символов на строку. С помощью strlen можно узнать длину каждой, главное наличие '\0' в конце самой строки.
Цитата Destroy ( ) и как обратиться к конкретному символу конкретной строки? например так str[i][j], где i - строка, j - столбец? Именно так. j - индекс символа i-той строки.
C++ - он особенный. С помощью него можно не только выстрелить себе в ногу, но и повеситься в пустой комнате:)
|
|
| |
Archido | Дата: Суббота, 11 Января 2014, 16:43 | Сообщение # 97 | Тема: ERROR |
Сэнсэй
Сейчас нет на сайте
| Shevron_7 Замени char на string и убери все "(char)" в теле switch + после каждого "case" неплохо бы делать break. И да, ты работаешь всего с 3-я элементами вместо 4-х задуманных.
C++ - он особенный. С помощью него можно не только выстрелить себе в ногу, но и повеситься в пустой комнате:)
|
|
| |
Archido | Дата: Вторник, 31 Декабря 2013, 14:17 | Сообщение # 98 | Тема: Вот в общем то прочитал статью и задумался |
Сэнсэй
Сейчас нет на сайте
| Цитата vasua99 ( ) Ну вот языки со встроенной поддержкой довольно ушербны. Ущербны не в плане поддержки возможностей, а в плане костыльности этих возможностей. Из языков нормальная поддержка только у Python и Object C Иксперты в студии. В чем разница между реализациями ООП модели у С++ и ObjC? Хочется подробностей про костыли и нормальную поддержку.
Цитата vasua99 ( ) Оно там не взялось. Но его можно имитировать. Браво. Не зря в твоих постах ключевое слово - это "костыль".
C++ - он особенный. С помощью него можно не только выстрелить себе в ногу, но и повеситься в пустой комнате:)
|
|
| |
Archido | Дата: Вторник, 31 Декабря 2013, 14:02 | Сообщение # 99 | Тема: Happy New Year! (С Новым Годом!) |
Сэнсэй
Сейчас нет на сайте
| DreamCraft
Всех с НГ!
C++ - он особенный. С помощью него можно не только выстрелить себе в ногу, но и повеситься в пустой комнате:)
|
|
| |
Archido | Дата: Понедельник, 30 Декабря 2013, 13:25 | Сообщение # 100 | Тема: Вот в общем то прочитал статью и задумался |
Сэнсэй
Сейчас нет на сайте
| ТС не осилил ООП и теперь пытается убедить себя, что енто ООП и все с ним связанное - есть "костыль", поэтому осиливать ничего и не нужно.
C++ - он особенный. С помощью него можно не только выстрелить себе в ногу, но и повеситься в пустой комнате:)
|
|
| |
|