Мерцание звёзд

Программирование на Visual Basic, главный форум. Обсуждение тем программирования на VB 1—6.
Даже если вы плохо разбираетесь в VB и программировании вообще — тут вам помогут. В разумных пределах, конечно.
Правила форума
Темы, в которых будет сначала написано «что нужно сделать», а затем просьба «помогите», будут закрыты.
Читайте требования к создаваемым темам.
neic
Жираф
Жираф
 
Сообщения: 492
Зарегистрирован: 13.02.2005 (Вс) 23:44
Откуда: Сланцы

Мерцание звёзд

Сообщение neic » 13.02.2005 (Вс) 23:58

Вот ту делаю для самого себя, застовку.
И вот я захотел я её улучшить. Но у меня возник впорос, как сделать мерцание звёзд, можноли попробовать прозарчаность?

Плиз помогите!

Amed
Алфизик
Алфизик
 
Сообщения: 5346
Зарегистрирован: 09.03.2003 (Вс) 9:26

Сообщение Amed » 14.02.2005 (Пн) 0:03

А как вообще рисуются звёзды? Можно кусочек кода в студию?

neic
Жираф
Жираф
 
Сообщения: 492
Зарегистрирован: 13.02.2005 (Вс) 23:44
Откуда: Сланцы

Сообщение neic » 14.02.2005 (Пн) 13:58

Точки = звёздочки!

Дальше объяснять надо?

alibek
Большой Человек
Большой Человек
 
Сообщения: 14205
Зарегистрирован: 19.04.2002 (Пт) 11:40
Откуда: Russia

Сообщение alibek » 14.02.2005 (Пн) 14:00

Нет, не надо, код давай.
Lasciate ogni speranza, voi ch'entrate.

Sirik
Perspicaz
Perspicaz
Аватара пользователя
 
Сообщения: 2280
Зарегистрирован: 19.02.2004 (Чт) 16:09
Откуда: Бердичев, Украина

Сообщение Sirik » 14.02.2005 (Пн) 14:11

А не проще запоминать позицию точки и окрашивать её от блого до серого и наоборот

Andrey Fedorov
Член-корреспондент академии VBStreets
Член-корреспондент академии VBStreets
 
Сообщения: 3287
Зарегистрирован: 21.05.2004 (Пт) 9:28
Откуда: Москва

Сообщение Andrey Fedorov » 14.02.2005 (Пн) 16:18

Гы!
А я когда-то в FoxPro for DOS 2.5 скринсейвер делал а-ля NC... И работало все нормально - со звездочками... Но кода уже давным-давно нет :(
Фиг Вам! - Сказал Чебурашка, обгладывая Крокодила Гену...

neic
Жираф
Жираф
 
Сообщения: 492
Зарегистрирован: 13.02.2005 (Вс) 23:44
Откуда: Сланцы

Сообщение neic » 14.02.2005 (Пн) 16:25

Sirik:
А ты представь себе помнить кординаты пары тысяч звёздочек :)

Andrey Fedorov
Член-корреспондент академии VBStreets
Член-корреспондент академии VBStreets
 
Сообщения: 3287
Зарегистрирован: 21.05.2004 (Пт) 9:28
Откуда: Москва

Сообщение Andrey Fedorov » 14.02.2005 (Пн) 16:29

neic писал(а):Sirik:
А ты представь себе помнить кординаты пары тысяч звёздочек :)


Ну массив звездочек с их координатами и состоянием - какие проблемы? Пробегаешь по массиву и меняешь состояние на очередное...
Фиг Вам! - Сказал Чебурашка, обгладывая Крокодила Гену...

alibek
Большой Человек
Большой Человек
 
Сообщения: 14205
Зарегистрирован: 19.04.2002 (Пт) 11:40
Откуда: Russia

Сообщение alibek » 14.02.2005 (Пн) 16:44

А зачем вообще массив с координатами? Любая функция, более-менее распределяющая значения по спектру (например, Rnd) вполне подойдет в качестве источника координат.
Lasciate ogni speranza, voi ch'entrate.

Andrey Fedorov
Член-корреспондент академии VBStreets
Член-корреспондент академии VBStreets
 
Сообщения: 3287
Зарегистрирован: 21.05.2004 (Пт) 9:28
Откуда: Москва

Сообщение Andrey Fedorov » 14.02.2005 (Пн) 16:46

В качестве источника - да, но ведь эту звездочку надо запомнить чтобы потом менять ее состояние...
Фиг Вам! - Сказал Чебурашка, обгладывая Крокодила Гену...

Sirik
Perspicaz
Perspicaz
Аватара пользователя
 
Сообщения: 2280
Зарегистрирован: 19.02.2004 (Чт) 16:09
Откуда: Бердичев, Украина

Сообщение Sirik » 14.02.2005 (Пн) 16:47

alibek писал(а):А зачем вообще массив с координатами? Любая функция, более-менее распределяющая значения по спектру (например, Rnd) вполне подойдет в качестве источника координат.


Да, но это для генерации координат. Эти координаты надо запомнить, чтобы изменить цвет, т.е. яркость свечения. Как по-другому?

alibek
Большой Человек
Большой Человек
 
Сообщения: 14205
Зарегистрирован: 19.04.2002 (Пт) 11:40
Откуда: Russia

Сообщение alibek » 14.02.2005 (Пн) 16:57

Зачем запоминать? Генерировать повторно. Rnd с одним и тем-же Randomize будет всегда давать одну и ту же последовательность.
Можно запоминать Random Seed, это проще, чем запоминать массив координат.
Lasciate ogni speranza, voi ch'entrate.

Andrey Fedorov
Член-корреспондент академии VBStreets
Член-корреспондент академии VBStreets
 
Сообщения: 3287
Зарегистрирован: 21.05.2004 (Пт) 9:28
Откуда: Москва

Сообщение Andrey Fedorov » 14.02.2005 (Пн) 17:02

Тебе все одно придется где-то хранить состояние "звездочки". Да и "звездочки" имеют свойство гаснуть - вместо них возникают другие...
Фиг Вам! - Сказал Чебурашка, обгладывая Крокодила Гену...

uhm
Продвинутый гуру
Продвинутый гуру
Аватара пользователя
 
Сообщения: 1597
Зарегистрирован: 02.12.2004 (Чт) 15:21

Сообщение uhm » 14.02.2005 (Пн) 17:03

Могу предложить способ, как это делать, не храня координаты 8)

В ДОСовских играх такой способ часто использовался - постоянно менять палитру. Т. е. в 1ый момент времени у тебя определенный цвет палитры - белый, в следующий момент он чуть более темный и т. д. до черного.

Правда, на порядок проще именно хранить координаты :)

alibek
Большой Человек
Большой Человек
 
Сообщения: 14205
Зарегистрирован: 19.04.2002 (Пт) 11:40
Откуда: Russia

Сообщение alibek » 14.02.2005 (Пн) 17:04

Если звезда загориться на прежнем месте через 10 циклов, то ничего пользователь не заметит.
Состояние звезды (одно из которых будет "не горит") тоже можно генерировать функцией, Rnd с другим Random Seed.
Lasciate ogni speranza, voi ch'entrate.

Andrey Fedorov
Член-корреспондент академии VBStreets
Член-корреспондент академии VBStreets
 
Сообщения: 3287
Зарегистрирован: 21.05.2004 (Пт) 9:28
Откуда: Москва

Сообщение Andrey Fedorov » 14.02.2005 (Пн) 17:18

Ну ты эта... Попробуй сделать звездочки а-ля нортон коммандер без массива, а мы посмотрим.

;)
Фиг Вам! - Сказал Чебурашка, обгладывая Крокодила Гену...

alibek
Большой Человек
Большой Человек
 
Сообщения: 14205
Зарегистрирован: 19.04.2002 (Пт) 11:40
Откуда: Russia

Сообщение alibek » 14.02.2005 (Пн) 17:21

Зачем пробовать?
У MS в составе QBasic был пример на бейсике, где был использован именно этот подход. И все прекрасно работало.
Lasciate ogni speranza, voi ch'entrate.

Andrey Fedorov
Член-корреспондент академии VBStreets
Член-корреспондент академии VBStreets
 
Сообщения: 3287
Зарегистрирован: 21.05.2004 (Пт) 9:28
Откуда: Москва

Сообщение Andrey Fedorov » 14.02.2005 (Пн) 17:23

Может быть... Не видел, к сожалению.

P.S Только не надо его сюда!!!
Фиг Вам! - Сказал Чебурашка, обгладывая Крокодила Гену...

Mikle
Изобретатель велосипедов
Изобретатель велосипедов
Аватара пользователя
 
Сообщения: 4148
Зарегистрирован: 25.03.2003 (Вт) 14:02
Откуда: Туапсе

Сообщение Mikle » 14.02.2005 (Пн) 17:42

uhm
Палитра будет работать только в соответствующих видеорежимах, максимум 256 цветов.

neic
Жираф
Жираф
 
Сообщения: 492
Зарегистрирован: 13.02.2005 (Вс) 23:44
Откуда: Сланцы

Сообщение neic » 14.02.2005 (Пн) 18:57

uhm писал(а):Могу предложить способ, как это делать, не храня координаты 8)

В ДОСовских играх такой способ часто использовался - постоянно менять палитру. Т. е. в 1ый момент времени у тебя определенный цвет палитры - белый, в следующий момент он чуть более темный и т. д. до черного.

Правда, на порядок проще именно хранить координаты :)

Давай!

p.s. Уже тепло (то что я хочу сделать!)

KDima
Постоялец
Постоялец
Аватара пользователя
 
Сообщения: 759
Зарегистрирован: 14.07.2004 (Ср) 23:14
Откуда: СПб

Сообщение KDima » 14.02.2005 (Пн) 19:19

uhm писал(а):Могу предложить способ, как это делать, не храня координаты 8)

В ДОСовских играх такой способ часто использовался - постоянно менять палитру. Т. е. в 1ый момент времени у тебя определенный цвет палитры - белый, в следующий момент он чуть более темный и т. д. до черного.

Правда, на порядок проще именно хранить координаты :)


Ну и как это релизнуть под винды???
ААА! Нужен двумерный массив! :wink: :)
Хороший прогер не тот, кто всё знает, хороший прогер знает, где найти знание.

Последний раз редактировалось: Administrator (15.07.2004 (Вт) 00:01), всего редактировалось 999 раз(а)

SHURUP
Постоялец
Постоялец
Аватара пользователя
 
Сообщения: 440
Зарегистрирован: 15.09.2004 (Ср) 14:24
Откуда: Ирпень, Украина

Сообщение SHURUP » 15.02.2005 (Вт) 3:39

Насчет звездочек, вот создал тут проэктик…
Не добито до конца - но, думаю под шумок удастся продемонстрировать. Может кому чего даже понравится :roll:
Вложения
STARS.zip
Звездное небо
(2.52 Кб) Скачиваний: 20
Нам чужого не надо, но своё мы возьмем, чьё бы оно ни было...

KiloGraf
Продвинутый пользователь
Продвинутый пользователь
 
Сообщения: 142
Зарегистрирован: 21.10.2004 (Чт) 7:37
Откуда: берутся такие глупые вопросы?

Сообщение KiloGraf » 15.02.2005 (Вт) 3:44

Руль!!! Даже метеоры падают... Класс!
Nonsense in BASIC. © 1982 ...

uhm
Продвинутый гуру
Продвинутый гуру
Аватара пользователя
 
Сообщения: 1597
Зарегистрирован: 02.12.2004 (Чт) 15:21

Сообщение uhm » 15.02.2005 (Вт) 11:29

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


Вернуться в Visual Basic 1–6

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 125

    TopList