Форум Flasher.ru
Ближайшие курсы в Школе RealTime
Список интенсивных курсов: [см.]  
  
Специальные предложения: [см.]  
  
 
Блоги Правила Справка Пользователи Календарь Сообщения за день
 

Вернуться   Форум Flasher.ru > Flash > ActionScript 3.0

Версия для печати  Отправить по электронной почте    « Предыдущая тема | Следующая тема »  
Опции темы Опции просмотра
 
Создать новую тему Ответ
Старый 10.12.2010, 13:26
Vasylbo вне форума Посмотреть профиль Отправить личное сообщение для Vasylbo Найти все сообщения от Vasylbo
  № 1  
Ответить с цитированием
Vasylbo

Регистрация: Nov 2010
Сообщений: 3
Attention Создание полигонального спрайта

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


Последний раз редактировалось iNils; 10.12.2010 в 13:48.
Старый 10.12.2010, 13:36
Dukobpa3 вне форума Посмотреть профиль Отправить личное сообщение для Dukobpa3 Найти все сообщения от Dukobpa3
  № 2  
Ответить с цитированием
Dukobpa3
 
Аватар для Dukobpa3

блогер
Регистрация: Oct 2010
Адрес: Киев
Сообщений: 1,678
Записей в блоге: 12
Отправить сообщение для Dukobpa3 с помощью Skype™
А как рисуется?

Поидее вот так:
Код AS3:
var image:Sprite = new Sprite();
var shape:Shape = new Shape();
 
shape.graphics.beginFill(_color); //начинаем заливать
shape.graphics.moveTo(0, _height);
shape.graphics.lineTo(_width * 0.5, 0);
shape.graphics.lineTo(_width, _height);
shape.graphics.lineTo(0, _height);
shape.graphics.endFill(); // зканчиваем заливать. Если щелей нету, то область зальется.
 
image.addChild(shape);
Здесь у меня рисуется треугольник.

Ну и собственно всё. С текстуркой сложнее, по идее надо из этого шейпа сделать маску и наложить на спрайт текстуры. Но я с масками не игрался ни разу.

Старый 10.12.2010, 13:36
bav вне форума Посмотреть профиль Отправить личное сообщение для bav Найти все сообщения от bav
  № 3  
Ответить с цитированием
bav
 
Аватар для bav

Регистрация: Oct 2010
Сообщений: 1,049
Отправить сообщение для bav с помощью ICQ
Код AS3:
var sp:Sprite = new Sprite();  // Создаем спрайт
var gr:Graphics = sp.graphics;  // Ссылка на свойство graphics для краткости.
 
gr.lineStyle(3, 0x000000); // Толщина линии – 3, цвет – черный.
gr.beginFill(0xFF0000); // Цвет заливки – красный.
// Рисуем треугольник.
gr.moveTo(point1.x, point1.y);
gr.lineTo(point2.x, point2.y);
gr.lineTo(point3.x, point3.y);
gr.lineTo(point1.x, point1.y);
gr.endFill();
Почитайте про класс Graphics. Там есть метод beginBitmapFill().

Старый 10.12.2010, 13:39
-De- вне форума Посмотреть профиль Отправить личное сообщение для -De- Найти все сообщения от -De-
  № 4  
Ответить с цитированием
-De-
 
Аватар для -De-

блогер
Регистрация: Oct 2005
Адрес: Днепродзержинск - город Брежнева и других логопедов
Сообщений: 1,421
Записей в блоге: 4
Отправить сообщение для -De- с помощью ICQ Отправить сообщение для -De- с помощью Skype™
http://help.adobe.com/en_US/FlashPla...riangles%28%29
__________________
Бобры отвечают на вопросы не потому, что знают на них ответы; они отвечают потому, что их спрашивают.

Старый 10.12.2010, 13:43
Dukobpa3 вне форума Посмотреть профиль Отправить личное сообщение для Dukobpa3 Найти все сообщения от Dukobpa3
  № 5  
Ответить с цитированием
Dukobpa3
 
Аватар для Dukobpa3

блогер
Регистрация: Oct 2010
Адрес: Киев
Сообщений: 1,678
Записей в блоге: 12
Отправить сообщение для Dukobpa3 с помощью Skype™
Круто, у автора теперь есть код двух треугольников)

Старый 10.12.2010, 19:51
Vasylbo вне форума Посмотреть профиль Отправить личное сообщение для Vasylbo Найти все сообщения от Vasylbo
  № 6  
Ответить с цитированием
Vasylbo

Регистрация: Nov 2010
Сообщений: 3
Спасибо большое всем.
Дело в том что обрисовку делает сам движок (nape), и я думал что он тоже через graphics рисует, а получается просто контур. Поетому даже не пробовал так же делать

Создать новую тему Ответ Часовой пояс GMT +4, время: 00:27.
Быстрый переход
  « Предыдущая тема | Следующая тема »  

Теги
заливка , полигон , спрайты

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.


 


Часовой пояс GMT +4, время: 00:27.


Copyright © 1999-2008 Flasher.ru. All rights reserved.
Работает на vBulletin®. Copyright ©2000 - 2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Администрация сайта не несёт ответственности за любую предоставленную посетителями информацию. Подробнее см. Правила.