Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2008.06.15;
Скачать: CL | DM;

Вниз

Puzzle   Найти похожие ветки 

 
ryryr   (2007-02-13 07:35) [0]

Как сделать игру "Puzzle" , чтобы не квадратиками, а нормальными пазлами. Подскажите, кто может!


 
brother ©   (2007-02-13 10:33) [1]

а как виндовз написать?


 
MonoLife   (2007-02-13 11:11) [2]


> ryryr   (13.02.07 07:35)

напиши, хотя бы, что имеешь/умеешь, предположительно, какими средствами использовать..


 
Creative   (2007-02-13 11:31) [3]

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


 
MonoLife   (2007-02-13 11:45) [4]

Creative, поясни, что подразумевается под >взять/нарисовать профиль паззла?
Я делел паззл из прямоугольников... хочу тоже из кусков, давно мечтаю! :) Только вот, не знаю как сделать эти прямоугольники оригинальными кусочками... Нужен алгоритм разрезания картинки? Или еще что-то?


 
<Efir>   (2007-02-13 12:06) [5]


> Только вот, не знаю как сделать эти прямоугольники оригинальными
> кусочками...


Легко. Создаёш полигон с контурами "оригинального кусочка". Создаёшь новый битмап, рисуешь на нём полигон с какой нить заливкой. Делаешь этот цвет прозрачным и рисуешь этот битмап с полигоном на кусочке рисунка паззла.


 
Creative   (2007-02-13 12:37) [6]

Я думала, чо паззлы - это специфическое название мозаики из таких странный фигурок с круглыми выступами и впадинами.
Как я делала: я брала оригинальныю картинку, рисовала векторный контур кусочка мозаики, и закладывала картинку этими контурами. Потом я резала ее на кусочки соответствующей формы. Я игрушку не писала, но если бы стала , то наверное грузила бы битмат с прозрачным фоном, ли что то в этом роде.


 
MonoLife   (2007-02-13 13:28) [7]


> <Efir>   (13.02.07 12:06) [5]

это что, по типу битмап маски?

> Creative   (13.02.07 12:37) [6]
..
> Потом я резала ее на кусочки соответствующей формы.

как?!


 
Creative   (2007-02-13 13:51) [8]


> > Потом я резала ее на кусочки соответствующей формы.
>как? !


ну я делаю так:

1. запускаю фотошоп.
2. открываю картинку.
3. рисую пером или загружаю из иллюстратора путь в форме кусочка паззла.
4. сохраняю путь.
5. повторяю пп. 3-4 до тех пор, пока картинка не будет вся покрыта сеткой кусочков.
6. начинаю вырезать:
  6.1выделаю слой основной картинки
  6.2 в закладке Path выбираю первый путь и делаю ctrl+Click, получая поверх картинки выделение в форме моего кусочка.
  6.3 копирую выделанную часть картинки в новый файл
7. повторяю п. 6 до тех пор пока не разрежу картинку на столько файлов, из скольких кусочков состоит мой паззл.

Вот. Если я конечно провильно поняла вопрос.


 
MonoLife   (2007-02-13 14:11) [9]

а... интересно... но вопрос, конечно же, не про фотошоп.. Как разрезать программно фигурно?

Просто, возник такой сабж и я конечно же заинтересовался...


 
<Efir>   (2007-02-13 14:20) [10]


> Creative   (13.02.07 13:51) [8]


Хитро.

Можно ещё хранить массив координат искомой области.


 
Creative   (2007-02-13 14:48) [11]

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


 
@!!ex ©   (2007-02-13 14:58) [12]

Делаем N-дцать типов кусочков.
Каждый тип -
reocrd
 Top,Left,Bottom,Right:word;//Показывает с каким типом кусок стыкуеться в соответствующими сторонам.
end;

Строиться 2d массив на картинку. Где забиваються случайно разные типы кусков.
Размер каждого куска - фиксированный. То есть он все равно квадрат, просто где то у него вырез, а где то выпуклость, но в общем он влазит в квадрат фиксированного размера.
Имеем N-дцать примитивов. Для каждого типа свой примитив.
Текстурные координаты для каждого recrf вычисляються в зависиости от положения куска в построенном 2d массиве.

Вопросы?


 
MonoLife   (2007-02-13 15:32) [13]


> Creative   (13.02.07 14:48) [11]

я уже упомянул маску... пока оставим ее..

> @!!ex ©   (13.02.07 14:58) [12]

что ты описал? Как взаимодействуют между собой фрагменты и смешиваются? Это вопрос второстепенный, как и визуализация...

> просто где то у него вырез, а где то выпуклость

вот это как сделать?!


 
Creative   (2007-02-13 15:50) [14]


> > просто где то у него вырез, а где то выпуклость
>вот это как сделать?!


а ты можешь объяснить - что "это"?


 
MonoLife   (2007-02-13 16:12) [15]


> Creative   (13.02.07 15:50) [14]

это ко мне? Если я спросил как это сделать, то что я могу объяснить, если сам не знаю?! Хотя... если вернемся к "маске"... Но и здесь хотелось бы подробностей. С учетом, что маску нужно накладывать не на всю картинку а на каждый кусок отдельно


 
@!!ex ©   (2007-02-13 16:25) [16]


> MonoLife   (13.02.07 15:32) [13]

Помоему я описал базовый концепт позволяющий реализовать все.
Проблема сгенерить примитив с выступом/дыркой? :))


 
@!!ex ©   (2007-02-13 16:28) [17]


> MonoLife   (13.02.07 16:12) [15]

Помоему я довольно я сно описал, как на примитив накладывать текстуру...


 
MonoLife   (2007-02-14 03:31) [18]


> Помоему я довольно я сно описал, как на примитив накладывать
> текстуру...

нет, не ясно
>Проблема сгенерить примитив с выступом/дыркой? :))
да



Страницы: 1 вся ветка

Текущий архив: 2008.06.15;
Скачать: CL | DM;

Наверх




Память: 0.51 MB
Время: 0.023 c
9-1171128545
electroman239
2007-02-10 20:29
2008.06.15
Алгоритм удаления шаров


2-1211606107
passTree
2008-05-24 09:15
2008.06.15
Связь делфи с Excel


15-1210046715
Xmen
2008-05-06 08:05
2008.06.15
выбор среду Delphi для написания программы


2-1211530376
NieL
2008-05-23 12:12
2008.06.15
NTFS


4-1191494697
antoxa2005
2007-10-04 14:44
2008.06.15
Подскажите, а как считать то, что программа отправила на Com порт