Извините, ничего не найдено.

Не расстраивайся! Лучше выпей чайку!
Регистрация
Справка
Календарь

Вернуться   forum.boolean.name > Программирование игр для компьютеров > Blitz3D

Ответ
 
Опции темы
Старый 07.03.2009, 19:50   #16
ABTOMAT
Ференька
 
Аватар для ABTOMAT
 
Регистрация: 26.01.2007
Адрес: улица Пушкина дом Колотушкина
Сообщений: 10,741
Написано 5,461 полезных сообщений
(для 15,675 пользователей)
Ответ: Динамический массив - способы реализации!

Ну тогда три массива в типе

Делать массив из типов тоже можно, надо указывать в качестве типа массива свой тип, например
Cubes.A(100)
Где A - твой тип

А цвет - там хытренько
Function ARGB(A#,R,G,B)
	Return (Int(A*255) Shl 24) Or (R Shl 16)  Or (G Shl 8)  Or B	
End Function
Возвращает 1 инт
Как прочитать из этого цвета обратно думаю догадаешься
__________________
Мои проекты:
Анальное Рабство
Зелёный Слоник
Дмитрий Маслов*
Различие**
Клюква**

* — в стадии разработки
** — в стадии проектирования
Для проектов в стадии проектирования приведены кодовые имена

(Offline)
 
Ответить с цитированием
Сообщение было полезно следующим пользователям:
ELIAS (07.03.2009)
Старый 07.03.2009, 20:05   #17
HolyDel
 
Регистрация: 26.09.2006
Сообщений: 6,035
Написано 1,474 полезных сообщений
(для 2,707 пользователей)
Ответ: Динамический массив - способы реализации!

Type A
Field Cubes[10000]
Field Colors[10000]
End Type
100 * 100 = 10000

пишеш простую функцию - типа
function index(int a, int b)
retrun 100*a + b;
end function
и дальше тупая, как тибетская овца, операция:
some.A = new A
some\Cubes[index(10,20)] = бла_бла_бла
(Offline)
 
Ответить с цитированием
Сообщение было полезно следующим пользователям:
ELIAS (07.03.2009)
Старый 07.03.2009, 20:22   #18
ABTOMAT
Ференька
 
Аватар для ABTOMAT
 
Регистрация: 26.01.2007
Адрес: улица Пушкина дом Колотушкина
Сообщений: 10,741
Написано 5,461 полезных сообщений
(для 15,675 пользователей)
Ответ: Динамический массив - способы реализации!

В попу лишнее умножение и вызов функции
__________________
Мои проекты:
Анальное Рабство
Зелёный Слоник
Дмитрий Маслов*
Различие**
Клюква**

* — в стадии разработки
** — в стадии проектирования
Для проектов в стадии проектирования приведены кодовые имена

(Offline)
 
Ответить с цитированием
Старый 07.03.2009, 20:39   #19
HolyDel
 
Регистрация: 26.09.2006
Сообщений: 6,035
Написано 1,474 полезных сообщений
(для 2,707 пользователей)
Ответ: Динамический массив - способы реализации!

умножение и сложение - это минимум. чтобы получить 1д индекс из 2д.
вызов функции - для удобства. ну нет в блице макросов и инлайн функций.

как ты предлагаеш еще решить эту задачу?
(Offline)
 
Ответить с цитированием
Старый 07.03.2009, 21:04   #20
ABTOMAT
Ференька
 
Аватар для ABTOMAT
 
Регистрация: 26.01.2007
Адрес: улица Пушкина дом Колотушкина
Сообщений: 10,741
Написано 5,461 полезных сообщений
(для 15,675 пользователей)
Ответ: Динамический массив - способы реализации!

Я уже предложил выше. Это намного разумнее. Во-первых, потому что всякой хрени вроде доп функций не надо, а во-вторых вот поменяешь размер массива - и функцию переписывать придётся. Или использовать Глобалы. Или константы, но тогда функция для каждого случая своя, что тоже ФПС не увеличит.
__________________
Мои проекты:
Анальное Рабство
Зелёный Слоник
Дмитрий Маслов*
Различие**
Клюква**

* — в стадии разработки
** — в стадии проектирования
Для проектов в стадии проектирования приведены кодовые имена

(Offline)
 
Ответить с цитированием
Старый 07.03.2009, 21:55   #21
ELIAS
Знающий
 
Аватар для ELIAS
 
Регистрация: 31.08.2008
Адрес: Arrakis
Сообщений: 234
Написано 6 полезных сообщений
(для 6 пользователей)
Ответ: Динамический массив - способы реализации!

Спасибо, HolyDel, твою идею я понял, может воспользуюсь ею Но, там у тебя функция построена так что заранее сказано что типа квадрат 100х100, у меня будет не обязательно квадраты и не обязательно будет 100...
АВТОМАТ,(пост 16) я не понял если мы пишем так:
dim Cubes.A(100)
То какой смысл вообще использовать типы, обычный массив можно сдлелать n-мерным. Или я не понял твою идею...?.%%%

Блин! Ничего себе! Вот не поодумал бы что так придётся извращаться из-за казалось бы не сложной для понимания вещи... Неужели не существует ещё более лаконичного и понятного для восприятия способа?..
(Offline)
 
Ответить с цитированием
Старый 07.03.2009, 22:21   #22
ABTOMAT
Ференька
 
Аватар для ABTOMAT
 
Регистрация: 26.01.2007
Адрес: улица Пушкина дом Колотушкина
Сообщений: 10,741
Написано 5,461 полезных сообщений
(для 15,675 пользователей)
Ответ: Динамический массив - способы реализации!

Наверноя я просто не понял что ты хочешь - вот и предложил не то...

Можно вообще всё сделать на массивах без типов (так покойный WarTech был сделан)
__________________
Мои проекты:
Анальное Рабство
Зелёный Слоник
Дмитрий Маслов*
Различие**
Клюква**

* — в стадии разработки
** — в стадии проектирования
Для проектов в стадии проектирования приведены кодовые имена

(Offline)
 
Ответить с цитированием
Ответ


Опции темы

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

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

Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Lib_array2d - Динамический двухмерный массив odd Библиотеки 18 23.11.2013 01:31
Lib_bytes - Динамический массив байт odd Библиотеки 9 07.03.2011 19:56
A* и способы его оптимизации SubZer0 Алгоритмика 29 24.01.2011 12:10
Как сделать динамический массив целых чисел? artemff Основной форум 2 31.12.2009 03:51
Способы сжатия графики Phantom FAQ 26 12.10.2008 20:24


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


vBulletin® Version 3.6.5.
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Перевод: zCarot
Style crйe par Allan - vBulletin-Ressources.com