Программист - это тот, кто не бегает к другим с вопросами "как мне сделать ту или иную фичу".
Кодер - тот к то бегает с такими вопросами к программисту.
Основные отличия программиста от кодера - ответственность и уверенность в собственных силах плюс наличие стратегического мышления, умение представить систему в целом, со всеми зависимостями.
Кодер работает над кодом, программист - над проектом.
Препроцессоры (LESS, SCSS, SASS, Stylus), всякие фреймворки типа Angular и React.js, сборщики типа Grunt или Gulp. Node.js, чтобы это всё замутить в автоматическую сборку. Bower ещё какой-нибудь.
Нативный JavaScript — это основное и неотъемлемое требование.
Разумеется, нужно хорошо уметь верстать. Для современных браузеров уже не настолько актуально, но всё-таки стоит использовать спрайты или иконочные шрифты. Я предпочитаю второе.
Реверсом занимаетесь? Зачем? Берете книгу "Математические основы машинной графики", сразу многие вопросы отпадают, дальше по восходящей. Инфу по stencilfunc, stencilop ищите по "stencil buffer", да и тут гугл даёт довольно хорошие результаты.
Для Adobe Illustrator советую сначала посмотреть ознакомительные уроки, к примеру тут: ссылка
После можешь приступать к более сложным урокам: ссылка
Выбирай разные уроки с разным методом работы и запоминай, где, что и как делается. Когда поймешь, что можешь сам - делай.
никуда ваши изменения не исчезли. Вы их просто "спрятали". После того, как сделаете pull, вы можете снова применить ваши "спрятанные" изменения git stash apply.
Можно прятать несколько состояний, а их список смотреть командой git stash list.
Удобная штука :)
Художник, artist - это направление в принципе. Если брать арт как дисциплину, то в применении к FPS, есть масса художников. Концепт-художник, работает над общим визуальным стилем, прорабатывая все моменты до реализации. Художник-моделлер занимается моделлингом окружения и персонажей, получая эстафету от концепт-художника. На этом этапе концепция претворяется в жизнь и становится трёхмерной моделью. Художник по текстурам берёт материал моделлера, плюс развёртка, и отрисовывает текстуры. Лид-художник следит за общим визуальным стилем, плотно работая со всеми участниками - от концепта до финальной картинки в движке, это масса работы - от палитры до света.
Часто эти позиции совмещаются, но лучше иметь людей со специализацией на направлении. Например, не каждый моделлер сделает вам хороший концепт. Как и не каждый концептер вылепит годного монстра в zbrush. В современном геймдеве масса знаний уже настолько высока, что художникам приходится даже физику света учить - PBR уже стал мейнстримом.
Если брать конкретно FPS:
1) Концепт-арты всего. Персонажей, оружия, каких то отдельных моделек. Возможно отдельно концепты уровней, особенно если там какой нить нестандартный сеттинг.
2) Текстурирование моделей.
3) Интерфейс. Сюда входит все - менюшки, окна, иконки и т.д.
4) Промо-арт (логотип, иконка, банера и т.д.)
Причем на каждый пункт можно отдельного человека заводить.
например, наброски - единственный способ увидеть результат до завершения проекта, и понять в ту ли сторону идете.
фоны, дизайн персонажей, дизайн предметов.
на бесплатных текстурах далеко не уедешь.
модельки 3D тоже не по ходу придумываются же. нужно несколько фото или набросков, иначе получится то, что указал vilgeforce
Ответьте мне на вопросы -
Скажите, а смогу ли я сделать одну из лучших игр? Я только завтра куплю книгу о программировании.
Скажите, а смогу ли я сделать одну из лучших игр? У меня двадцать лет стажа и я участвовал в разработке всех топовых игр.
Откуда отвечающий Вам может знать на что Вы способны? Человек который не понимает этого не может создать игру, ему ещё нужно минимум пять лет учится, чтобы дойти до того уровня, когда он сможет понять, что спрашивать нужно о другом.
А вы посмотрите уроки Артема(sorax), потом попробуйте посмотреть "специалиста".
Преподователь безусловно хорош, но как сказал Роман Белинский , уши он не жалеет
abstract class GlobalConfig{
const ROOT = "DOCUMENT_ROOT";
public function root(){
return $_SERVER[self::ROOT];
}
}
class A extends GlobalConfig{
public function ttt(){
return parent::root();
}
}
$a = new A();
echo $a->ttt();
Вот тебе! Дальше, делай тоже самое, для remote_addr, http_host,http_referer etc.
А если серьезно, выше верно написали, почитай больше про ооп, потом пиши) А то ты пытаешься писать процедурно только с использованием классов :)
> И вообще для чего он нужен?
Та особо ни для чего. Если пишете desktop приложение - может сэкономить вам человеко-год работы (а может и больше), пустяки в общем.
> Где применяется?
Все, что написано под винду - прямо, или косвенно его использует.
> Просто можно ведь просто писать всё на С++ или нет?
Конечно можно)) Например твоя собственная реализация оконного менеджера бесспорно будет лучше, чем у нейтивная для каждой ОС.
> подскажете литературу или что-то ещё.
Официальный мануал чем не устраивает?
> Месяц просто в никуда прошёл.
За месяц выучить WinAPI... Это возможно, по такой же схеме, как и С++ за 21 день. Вам понадобится эликсир молодости и машина времени.