Модераторы: Akina

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Мультфильмы, Как делать мультфильмы в Basic? 
:(
    Опции темы
Coca-colchic
  Дата 15.5.2004, 21:30 (ссылка)    |    (голосов: 0) Загрузка ... Загрузка ... Быстрая цитата Цитата


Unregistered











Как делать мультфильмы в Basic?
Например, я сделал рисунки в формате .bmp, как теперь их в Basic прокрутить, чтобы сделать мульт?
P. s. Желательно поподробнее пожалуйста exclamation.gif biggrin.gif
  Вверх
chipset
Дата 16.5.2004, 20:34 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Экс. модератор
Сообщений: 4071
Регистрация: 11.1.2003
Где: Seattle, US

Репутация: нет
Всего: 165



Фиг с ним, кодируй в jpg... BMP огромнющие wow.gif
Таймер просто настрой, сделай массив строк на файлы, а вот как JPG просматривать в VB я не знаю sad.gif


--------------------
Цитата(Jimi Hendrix)
Well, I stand up next to a mountain
And I chop it down with the edge of my hand
PM MAIL WWW   Вверх
Guest
Дата 16.5.2004, 20:56 (ссылка)    |    (голосов: 0) Загрузка ... Загрузка ... Быстрая цитата Цитата


Unregistered











А можно по-подробнее что писать в таймере и что надо делать, чтобы туда засунуть музыку, звуки? sarcasm.gif
  Вверх
bankuss
Дата 17.5.2004, 15:37 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 396
Регистрация: 26.3.2004

Репутация: 3
Всего: 4



ерундой занимаетесь... для мультиков есть другие языки программирования, например flash
или накрайняк dark basic
PM MAIL   Вверх
Vach
Дата 17.5.2004, 16:42 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 304
Регистрация: 17.10.2003
Где: Санкт-Петербург

Репутация: 8
Всего: 18



Пример:
Animate by Image Array
Удачи.
PM MAIL ICQ   Вверх
Guest
Дата 17.5.2004, 17:43 (ссылка)    |    (голосов: 0) Загрузка ... Загрузка ... Быстрая цитата Цитата


Unregistered











А где flash скачать? Только скажите русский сайт. И flash белплатный?
  Вверх
bankuss
Дата 18.5.2004, 07:13 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 396
Регистрация: 26.3.2004

Репутация: 3
Всего: 4



Компакт диски с этим флэшем на каждом углу продаются smile.gif
Документации и книжек тоже завались. Изучай! Может Масяню-2 сделаешь smile.gif
PM MAIL   Вверх
chipset
Дата 18.5.2004, 07:19 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Экс. модератор
Сообщений: 4071
Регистрация: 11.1.2003
Где: Seattle, US

Репутация: нет
Всего: 165



Да.. я помню когда вращающуюся луну сделал на VB то прыгал от радости...
эх... tounge.gif


--------------------
Цитата(Jimi Hendrix)
Well, I stand up next to a mountain
And I chop it down with the edge of my hand
PM MAIL WWW   Вверх
Некто
Дата 18.5.2004, 07:35 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 50
Регистрация: 11.5.2004

Репутация: нет
Всего: нет



А если на VB хочешь писать, то вот что надо: создаешь элементы Image (в каждом один кадр), обЪединяешь их в массив (даешь одинаковые имена), создаешь таймер с интервалом придется поиграть, чтобы выбрать самую подходящую смену кадров, а вот код:
Код

Dim i As Long

Private Sub Timer1_Timer()
Image(i).Visible = True
If i <> 0 Then
Image(i - 1).Visible = False
End If
If i = 99 Then
Timer1.Enabled = False
End If
End Sub

Число 99 зависит от числа кадров.
PM MAIL   Вверх
Гость_виктор
Дата 22.5.2004, 12:04 (ссылка)    |    (голосов: 0) Загрузка ... Загрузка ... Быстрая цитата Цитата


Unregistered











Как в VB делаются библиотеки с открытыми функциями или процедурами
  Вверх
cardinal
Дата 25.5.2004, 01:47 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Инженер
****


Профиль
Группа: Экс. модератор
Сообщений: 6003
Регистрация: 26.3.2002
Где: Германия

Репутация: 19
Всего: 99



Цитата
А где flash скачать? Только скажите русский сайт. И flash белплатный?

Coca-colchic, ты почему вобще это дело в VB затеял? И почему ты тогда так испугался, когда тебе сказали, что для этого есть flash? Ну есть. Ну и что. Посмотри пример, который тебе Vach дал. Проще некуда! Лично я во flash'е ничего не соображаю, но кажется мне, что во flash'e легче чем в этом примере не будет. Может я ошибаюсь...
Добавлено @ 01:48
Цитата
Как в VB делаются библиотеки с открытыми функциями или процедурами

Модератор: Пожалуйста, один топик - один вопрос.


--------------------
Немецкая оппозиция потребовала упростить натурализацию иммигрантов
В моем блоге: Разные истории из жизни в Германии

"Познание бесконечности требует бесконечного времени, а потому работай не работай - все едино".  А. и Б. Стругацкие
PM   Вверх
ulukbek
Дата 22.9.2004, 12:02 (ссылка)    |    (голосов: 0) Загрузка ... Загрузка ... Быстрая цитата Цитата


Unregistered











Как добавить учетную запись (почту) в Outlook Express 5 из yahoo.com
  Вверх
Desdichado
Дата 11.11.2004, 11:54 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 379
Регистрация: 5.4.2004
Где: Киев

Репутация: нет
Всего: 10



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

Подготовка рисунков (кадров).
Для начала нарисуйте несколько рисунков (кадров) для вашего мультфильма, это можно сделать в любом графическом редакторе и сохраните их с именами 0.*, 1.*, 2.* : (*.bmp, *.gif, *jpg) Запустите Visual Basic и создайте новый проект.

Визуальное проектирование.
Откройте форму, выберите Image (рисунок) в панели инструментов и поместите элемент Image на форму. Нажмите на добавленный элемент Image, в панели Properties в свойство Name, впишите "imgPicture", найдите свойство Visible и установите его как False.

Затем необходимо создать массив элементов Image. Нажмите на ваш элемент Image, который вы назвали, как "imgPicture". Нажмите Ctrl+C, что бы скопировать элемент Image в буфер обмена. Затем нажмите Ctrl+V. У вас на экране появится сообщение: "You already have a control named 'imgPicture'. Do you want to create a control array?" (перевод: "У вас уже есть элемент с именем 'imgPicture'. Хотите ли вы создать массив элементов?).

Нажмите Yes (Да). На форму добавится еще один элемент Image с именем imgPicture и порядковым номером 1. Обратите внимание, что элемент Image, который был добавлен первым, получил номер 0. Порядковый номер элемента определяется свойством Index. В панели Properties вы можете увидеть, что свойство Index одного из элементов равно 0, а другого 1. Нажмите на элемент imgPicture(0) и в панели Properties найдите Picture, справа от этого свойства нажмите на маленькую кнопочку ":" и в открывшемся окне выберите файл с первым кадром вашего мультфильма, если вы еще не нарисовали кадры, сделайте это. Рисунок, который вы выбрали, появится в элементе imgPicture(0). То же сделайте для imgPicture(1). Для добавления новых элементов Image, щелкните по любому из уже созданных элементов (imgPicture(0) или imgPicture(1)) и нажмите Ctrl+C, а затем нажмите Ctrl+V. Создайте их столько, сколько кадров вы нарисовали, но не забывайте, что первый элемент имеет номер 0 (например, если вы создали 5 кадров, то последний элемент будет иметь номер 4). Так же не забудьте вставлять в них ваши рисунки (кадры).

После этого выберите PictureBox в панели инструментов и поместите графическое окно на форму. Нажмите на только что созданное окно и в панели Properties в свойство Name, впишите "picPicture", найдите свойство AutoSize и установите его как True.

Теперь на панели инструментов найдите значок Timer и дважды щелкните по нему. Элемент Timer добавится на форму. Нажмите на него и в панели Properties в свойство Name, впишите "tmrTimer". Теперь необходимо установить интервал смены рисунков. В панели Properties найдите Interval, впишите туда что-нибудь типа 100, это означает, что ваши рисунки будут меняться с интервалом в 100 миллисекунд.

Пишем программный код.
Откройте окно программного кода (View-Code), впишите:

Dim y As Integer

Вы объявили глобальную переменную y.
Затем перейдите обратно на форму (View-Object) и дважды щелкните по таймеру (tmrTimer), откроется окно программного кода, введите:

y = y + 1: If y = imgPicture.Count Then y = 0 picPicture.Picture = imgPicture(y).Picture

Теперь каждые 100 миллисекунд переменная "y" будет увеличиваться на 1 и рисунок в picPicture будет равен рисунку imgPicture(y). Если переменная "y" достигнет значения равного номеру последнего кадра (imgPicture.Count), то мультфильм начнет проигрываться заново.

Заключение.
Вы закончили работу над программой теперь посмотрим на нее в действии. Нажмите F5 или щелкните на кнопку со стрелкой повернутой вправо, которая расположена на панели инструментов. Если вы все сделали правильно, программа запустится, и вы увидите, как в picPicture меняются рисунки


--------------------
Я, объявляю свой дом безъядерной зоной...
PM MAIL ICQ   Вверх
Akina
Дата 11.11.2004, 12:13 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Советчик
****


Профиль
Группа: Модератор
Сообщений: 20581
Регистрация: 8.4.2004
Где: Зеленоград

Репутация: 34
Всего: 454



Цитата
y = y + 1: If y = imgPicture.Count Then y = 0

y=(y+1) MOD imgPicture.Count


--------------------
 О(б)суждение моих действий - в соответствующей теме, пожалуйста. Или в РМ. И высшая инстанция - Администрация форума.

PM MAIL WWW ICQ Jabber   Вверх
Гость_Старуха
Дата 11.11.2004, 12:56 (ссылка)    |    (голосов: 0) Загрузка ... Загрузка ... Быстрая цитата Цитата


Unregistered











Вот в Интернете нашла.
Анимация
Ура!!! Я так долго ждал этого момента! Сейчас ты научишься работать с анимацией.
Как мы все знаем фильм это набор картинок, последовательно сменяющих друг друга. В VB картинки сменяться будут с помощью таймера - оно и понятно, любое движение это движение во времени.
Сейчас мы сделаем мультик из девятнадцати кадров, для этого расположи двадцать объектов Image. Для удобства у первого изображения оставь стандартное имя, а у остальных с img1 до img19 и присвой каждой по последовательной картинке соответственно. Расположи на форме таймер и установиу него Interval как 1 и выключи его. Расположи на форме кнопку, по нажатии которой мы и включим наш таймер.
Не буду тебя долго мучить, вот код для мультика:

Dim a As Integer

Private Sub Command1_Click()
Timer1.Enabled = True
a = 19
Command1.Visible = False
End Sub

Private Sub Timer1_Timer()
a = a - 1

If a = 19 Then
Image1.Picture = img1.Picture
End If
If a = 18 Then
Image1.Picture = Img2.Picture
End If
If a = 17 Then
Image1.Picture = Img3.Picture
End If
If a = 16 Then
Image1.Picture = Img4.Picture
End If
If a = 15 Then
Image1.Picture = Img5.Picture
End If
If a = 14 Then
Image1.Picture = Img6.Picture
End If
If a = 13 Then
Image1.Picture = Img7.Picture
End If
If a = 12 Then
Image1.Picture = Img8.Picture
End If
If a = 11 Then
Image1.Picture = img9.Picture
End If
If a = 10 Then
Image1.Picture = img10.Picture
End If
If a = 9 Then
Image1.Picture = img11.Picture
End If
If a = 8 Then
Image1.Picture = img12.Picture
End If
If a = 7 Then
Image1.Picture = img13.Picture
End If
If a = 6 Then
Image1.Picture = img14.Picture
End If
If a = 5 Then
Image1.Picture = img15.Picture
End If
If a = 4 Then
Image1.Picture = img16.Picture
End If
If a = 3 Then
Image1.Picture = img17.Picture
End If
If a = 2 Then
Image1.Picture = img18.Picture
End If
If a = 1 Then
Image1.Picture = img19.Picture
End If
If a = 1 Then
a = 19
End If
End Sub
Никогда не используй для анимации картинки формата Jpeg (*.jpg) или прочие сжатые файлы! При распаковке получается эффект мерцания, это занимет дополнительные ресурсы процессора и памяти! Используй только "чистые" картинки (*.bmp).
Запомни! Сэкономишь на размере - потеряешь в качестве, а на качестве не экономят!!!

  Вверх
Страницы: (3) Все [1] 2 3 
Ответ в темуСоздание новой темы Создание опроса
Правила форума "VB6"
Akina

Запрещается!

1. Публиковать ссылки на вскрытые компоненты

2. Обсуждать взлом компонентов и делиться вскрытыми компонентами

  • Литературу по VB обсуждаем здесь
  • Действия модераторов можно обсудить здесь
  • С просьбами о написании курсовой, реферата и т.п. обращаться сюда
  • Вопросы по реализации алгоритмов рассматриваются здесь
  • Используйте теги [code=vb][/code] для подсветки кода. Используйтe чекбокс "транслит" (возле кнопок кодов) если у Вас нет русских шрифтов.


Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Akina.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | VB6 | Следующая тема »


 




[ Время генерации скрипта: 0.0619 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.