среда, 14 сентября 2011 г.

Как я делал игру

Всем привет, меня зовут Марк, я — Flash-разработчик. Я доволен своей работой, с помощью которой я могу сейчас зарабатывать достаточно для достойного существования в городе на букву М, да чтобы ещё и была возможность потихоньку копить сбережения на будущее. Даже несмотря на то, что в этой стране само слово «будущее» является каким-то очень странным и непонятным термином.

Но, даже с учётом всех плюсов моей текущей работы, меня угнетает сама мысль о том, что я до конца жизни буду работать на кого-то другого, а не себя, буду обменивать своё время на чужие деньги, и делать богатым кого-то другого, а не себя и свою семью.

И вот, на фоне всеобщего помешательства инди-играми, бешеной популярности App Store и девайсов на базе Android, а так же нескольких шумных историй о том, как несколько разработчиков стали безумно богатыми за невероятно короткий срок, меня не покидают мысли о том, что я тоже могу, да что-там, я просто обязан заниматься разработкой игр в свободное от работы время.

Как я делал игру

воскресенье, 11 сентября 2011 г.

Создание очередной казуалки на Flash-платформе с физикой. Часть II

Привет хабра-сообществу.

Относительно недавно достаточно давно писал статью про создание очередной казуалки на Flash-платформе с физикой, обещал вторую статью, встречайте.
В этой статье — научу рисовать мир и расскажу о сенсорах. Остальное под катом.

Что можно сделать из этих двух уроков, можно посмотреть тут (музыку отключить нельзя, но можно убрать звук в системе)[...]

Создание очередной казуалки на Flash-платформе с физикой. Часть II

Создание своего Java Socket Server. Первый контакт

Итак, пришло время того самого момента, для чего мы все это затеяли — сделать соединение между клиентом и сервером.

В этой части мы создадим сервер при помощи библиотеки Netty, сделаем библиотеку на AS3 и проверим её. Чтобы понять процесс остановимся на простой реализации — клиент будет отправлять серверу сообщение, а сервер будет отправлять его обратно (это называется echo-сервер).

Делать мы это будем путем расширения кода, написанного в предыдущих частях.

Создаем java-socket сервер.

Создание сервера на Netty – процесс очень простой. Достаточно раз понять архитектуру этой библиотеки. Подробно с работой этой библиотеки можно познакомиться на сайте проекта.

Создаем новый канал.

Первым делом создаем фабрику для создания и управления Каналами и связанными ресурсами. Она будет обрабатывать все I/O запросы и генерировать ChannelEvent, которые мы уже будем обрабатывать [...]

Создание своего Java Socket Server. Первый контакт

суббота, 3 сентября 2011 г.

Создание своего Java Socket Server. Создание заготовки. Код в студию!

Написание сервера работа довольно объемная, поэтому описание функций я планирую делать методом добавления новой функциональности в демо-версию сервера.

Начнем с небольшой заготовки, которая будет содержать:

  • логгер
  • считывание параметров
public class JavaServer extends BaseJavaServerLoggedClass {

	public static JavaServerProperties properties;

	public static void main(String[] args) {
		prepare();
		info("String server...");
	}

	private static void prepare() {
		try {
			loadProperties();
			initLogger();
		} catch (Exception e) {
			System.out.println(e.getMessage());
			System.exit(-1);
		}
	}

	private static void loadProperties() throws Exception {
		properties = new JavaServerProperties();
		properties.loadProperties();
	}

	private static void initLogger() {
		org.apache.log4j.PropertyConfigurator.configure(properties.getProperty("log4j.propertyFileName"));
	}
}

Тут все предельно просто:
1. в методе initLogger() мы инициализируем логгер. Сами методы логера спрятаны в классе BaseJavaServerLoggedClass, чтобы не отвлекать от основного [...]

Читать дальше: Создание своего Java Socket Server. Создание заготовки. Код в студию!

Прототипирование игр с помощью JavaScript и CSS3

Я хотел бы поделиться прототипом игры, созданным всего за несколько часов. Надеюсь, что он вдохновит нескольких из вас! В индустрии однопользовательских браузерных игр, кажется, очень не хватает воображения и умения рассказывать истории, хотя, возможно, я просто не заметил таких игр ;), но мне не хватает таких игр, как Grim Fandango.

Ниже приведен скриншот из демонстрации, состоящей из нескольких узлов DOM, представляющих составные части главного героя, птиц и сцену. Большинство анимаций осуществляется CSS-переходами/анимациями, некоторые из которых являются динамическими и используют библиотеку move.js.

Grim Fandango

Читать дальше: Прототипирование игр с помощью JavaScript и CSS3:

вторник, 30 августа 2011 г.

Создание своего Java Socket Server. Теория. Из ActionScript3 в Java.

Введение

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

Я флеш-программист, и мой опыт работы с явой исчисляется где-то месяцем. Эта статья типа «написание Java Socket сервера глазами флеш-программиста».

Предыстория.

До того, как мы написали свой сервер в нашем проекте Doom Forge Game мы использовали готовое решение для мультиплеерных игр — Smart Fox Server. Сервер сделан хорошо, в нем много возможностей, но нам пришлось столкнуться с некоторыми проблемами в его работе, которые решались тяжелым общением с безинициативной службой поддержки и решение проблемы могло занимать не меньше месяца (если проблема вообще решалась). Так что опыт использования Smart Fox Server у меня был печальный.

Из ActionScript3 в Java

На самом деле, перейти из флеша на яву было очень просто. В java и флеше есть несколько отличий, которые запомнились лично мне (конечно, это не все отличия), но в общем они очень схожи.

Читать дальше: Создание своего Java Socket Server. Теория. Из ActionScript3 в Java.

понедельник, 29 августа 2011 г.

Ant.Karlov. Муравьиный лев

Нужно ли представлять?

Небольшое досье:

Антон КарловИмя: Антон Карлов

Возраст: 27 лет

Чем знаменит: Кумир разработчиков.  Непосвященные в тайны геймдева знают его как автора сочных игрушек с крутой атмосферой.

 

 

 

 

 

Раз уж вам так интересно, то скажу, что я познакомился с Антоном раньше, чем с кем-либо из флешдевелоперов.  Два года назад, если не больше, наткнулся я в сети на его видео, которое стало лидером по переходам с поисковых систем. После него я прошерудил весь блог и добавил его в гуглридер. Тогда в нем было только 4 подписки.

Сейчас, насколько я мог судить, у каждого блогера, который хоть раз в жизни кликал по ярлычку флеша на рабочем столе, блог Антона висит в разделе «сайты для вдохновения». Как вы понимаете, такая популярность не случайна. Подытожив его деятельность за два года хочу сказать, что писал он пожалуй о всех важных аспектах геймдева, так что интервью у него взять было сложно. Кроме крутых уроков по графике,  раскрытия некоторых секретов кодинга и работы вообще я обожаю читкануть его посты с тегом «Разное». Перед тем как брать интервью, я проглядел с самого начала все его посты, что и вам советую сделать. Меня лично очень вдохновляет эволюция его стиля, не резкая, а плавная. Добавление новых мелочей в каждую новую игру это, наверное, его главная фишечка. Как я и говорил,  мне было сложно задавать оригинальные вопросы, поскольку почти все что он делает описано в его статьях. Поэтому я составил вопросы, которые затрагивали либо темы далекого прошлого, либо будущего, чтобы не заставлять его дублировать свои мысли. Если честно, я и не ожидал, что ответы будут такими душевными. Очень рад, что взял интервью у такого открытого человека. Но сопли прочь, вперед читать [...]

Читать дальше: Ant.Karlov. Муравьиный лев.