Интегрированная система SCAD Office — инструментарий инженера проектировщика
Между дизайнером и программистом: инструментарий в...
description
Transcript of Между дизайнером и программистом: инструментарий в...
Сергей «WR» ТрошинРуководитель команды разработки инструментария
www.mail.ru
Между Дизайнером и Программистом
Запчасти гейм-механики
class Spell {Impact[] impacts;
void run ( Creature target ) {for ( Impact i: impacts ) {
i.run ( target );}
}}
class Damage implements Impact {int damage;
void run ( Creature target ) {target.health -= damage;
}}
www.mail.ru 3
Заклинание = набор импактов
Импакт = данные + код
Java-классы
Ресурсы
class Spell {Impact[] impacts;
void run ( Creature target ) {for ( Impact i: impacts ) {
i.run ( target );}
}}
class Damage implements Impact {int damage;
void run ( Creature target ) {target.health -= damage;
}}
www.mail.ru 4
(de)serialization
Java-классы Ресурсы
?
XML
class Spell {Impact[] impacts;
void run ( Creature target ) {for ( Impact i: impacts ) {
i.run ( target );}
}}
class Damage implements Impact {int damage;
void run ( Creature target ) {target.health -= damage;
}}
www.mail.ru 5
(de)serialization
Java-классы XML-файлы
<Spell>
<impacts>
<item type=“Damage”>
<damage>10</damage>
</item>
<item type=“SayText”>
<text>Die!!! :-E</text>
</item>
</impacts>
</Spell>
Программист и Дизайнер
www.mail.ru 7
ДизайнерПрограммист
<Spell>
<impacts>
<item type=“Damage”>
<damage>10</damage>
</item>
</impacts>
</Spell> WTF?!
А нужны ли тулзы вообще?
www.mail.ru 11
ДизайнерПрограммист
<Spell>
<impacts>
<item type=“Damage”>
<damage>10</damage>
</item>
</impacts>
</Spell>
10 dmg
Тулзы спасут мир!
www.mail.ru 12
ДизайнерПрограммист
<Spell>
<impacts>
<item type=“Damage”>
<damage>10</damage>
</item>
</impacts>
</Spell>
Тулзы
10 dmg
«Разрезалка» БД
www.mail.ru 15
Mechanics Visuals«Общая»
БД
Server(Java)
Tools(C#)
Client(C++)
Серверная БД
Клиентская БД
Архитектура тулзов
www.mail.ru 16
File System
Client (C++)
Wrap
Tools (C#) WinForms / WPF
DLLExport / PInvoke
3D Scene
DB
XML
Sound
БД
www.mail.ru 17
XML-файлы
types
• Классы
• Поля классов
index
• Список файлов по классам
XML DB
Client Code Disk
LibDB
Game
Tools
~300к штук
Полезные советы
www.mail.ru 31
• Сервер и клиент важнее (а тулзы как-нибудь сделаем)
• Низкие требования и набор по «остаточному принципу»
• Совсем необязательно знать о юзабилити
Полезные советы
www.mail.ru 32
• Сервер и клиент важнее (а тулзы как-нибудь сделаем)
• Низкие требования и набор по «остаточному принципу»
• Совсем необязательно знать о юзабилити
Сергей ТрошинРуководитель команды разработки инструментария,
департамент клиентских игр
СПАСИБО!
www.mail.ru
Mail.Ru
Разработчик игр и сервисов №1
Крупнейший работодатель в отрасли
Работайте у нас!
http://corp.mail.ru/career/vacancies/voronezh