Изображения в 3D на php

Статус
Закрыто для дальнейших ответов.

FiRеFоX

V.I.P.
Регистрация
07.08.2010
Сообщения
744
Хочу сделать что-то подобное:
Полураздетый игрок и при надевании какой-либо вещи она надевалась и на изображении раздетого этого игрока.
Как это можно реализовать?
1. Рисуем аватар (изображение) человека (вид спереди, вид слева, вид справа);
2. Рисуем вещь (например штаны) (вид спереди, вид слева, вид справа);
Ну и собственно вопрос, как это объединить? В смысле как штаны надеть на человека на php? На многих сайтах игр( например wow) видел подобное - там входишь в кабинет и видишь как одет твой персонаж.
Допустим 10 видов игроков, у каждого своя ширина морды, ноги и остального. К каждому чтоль рисовать вещь? Или как-то растянуть можно будет?
Для примера ссылка:
http://elite-wow.com/kills_top3.html
Достаточно нажать на имя любого персонажа и там выведется картинка его. Как сделать тоже самое?:) Хотя бы просто с трех сторон..
 

BaNru

Пацифизжу
Команда форума
Регистрация
13.11.2010
Сообщения
4 138
PNG, слои и альфа каналы
+ GD или ImageMagick

У тебя WAP игра. О 3D и флеше тут трудно говорить.
Можешь конечно копнуть в сторону WebGL, но ее поддерживают только телефоны/планшеты последнего поколения. Равно как поддерживают весь остальной интернет. Т.е. смысл твоей WAP игры теряется полностью.

К каждому чтоль рисовать вещь? Или как-то растянуть можно будет?
Ну правильнее рисовать. Но можно и сжать, но не растянуть.
 

mrlasking

$_GET['rich'] or die('trying');
Регистрация
22.05.2012
Сообщения
323
Для примера ссылка: http://elite-wow.com/kills_top3.html
В примере это реализовано во флеше, это так, для справки. С wow-ом, если знаешь - не очень сложно взаимодействовать, база вещей, картинок, моделей - все можно найти. Да, под каждую модель (расу/пол) рисуются разные элементы графики, а бывает, что и разными моделерами, так что бывает, что одна и та же шмотка выглядит немного по разному.

Есть еще вариант кастомизации сетов брони/оружия в зависимости от перса. Модели штанов тому пример, во многих проектах, бронь в слот для ног будет в виде штанов на мужской модельке и в виде юбки на женской модельке.


Трансформировать же изображение "налету"... хм, ну только в том случае, если модели персонажей отличаются только пропорционально.

Только вот, Фокс, зачем тебе 3Д ? Насколько я помню - у тебя wap игруха, обойдись 2Д графой и средствами php+js все запилишь.
 

FiRеFоX

V.I.P.
Регистрация
07.08.2010
Сообщения
744
В примере это реализовано во флеше, это так, для справки. С wow-ом, если знаешь - не очень сложно взаимодействовать, база вещей, картинок, моделей - все можно найти. Да, под каждую модель (расу/пол) рисуются разные элементы графики, а бывает, что и разными моделерами, так что бывает, что одна и та же шмотка выглядит немного по разному.

Есть еще вариант кастомизации сетов брони/оружия в зависимости от перса. Модели штанов тому пример, во многих проектах, бронь в слот для ног будет в виде штанов на мужской модельке и в виде юбки на женской модельке.


Трансформировать же изображение "налету"... хм, ну только в том случае, если модели персонажей отличаются только пропорционально.

Только вот, Фокс, зачем тебе 3Д ? Насколько я помню - у тебя wap игруха, обойдись 2Д графой и средствами php+js все запилишь.
Тогда хотя бы только вид спереди, но чтобы вещи надевались на персонажа. А каков сам процесс "надевания"?
Изображение игрока делим на части (голова, корпус, правая рука, левая рука.. - вобщем на все части, которые существуют в игре из экипировки) и отводим им свои пиксели(место, где оно находится);
А потом генерируем уже готовый аватар персонажа:
Код:
if($mesto_telo == 'Ноги' && $mesto_ekip == 'Ноги') {
// Вставляем изображение штанов на место голых ног персонажа(вместо них), если вещь надета
}
else {
//Рисуем обычные голые волосатые ноги, т.к вещей не надето
}
//Дальше идет код места вставки части тела в нужное место.. И так каждую часть тела..
Или не так это делается?
 

mrlasking

$_GET['rich'] or die('trying');
Регистрация
22.05.2012
Сообщения
323
Процесс надевания можно делать на клиенте, через js. Зачем делать кучу логики в php? ИМХО:
1. Отрисовываешь модельку игрока голого.
2. Передаешь массив шмоток этого перса, так же передаешь параметры рассы, пола, класа.
3. Подтягиваешь изображения по вводным данным
4. Проходишься по массиву и распихиваешь картинки по своим местам, отображая их поверх модельки. (z-index в помощь)
...
profit! :)

Для этого нужно, что б все шмотки были унифицированы по входящим параметрам. Например: все штаны для класса вор, рассы гоблин, мужского пола были 50*70 пикселей, и т.д.
 
Статус
Закрыто для дальнейших ответов.
Верх Низ