|
Результаты поиска
| |
| TimKruz | Дата: Пятница, 11 Января 2013, 22:44 | Сообщение # 2521 | Тема: Критика компьютерных игр от Switch |
старожил
Сейчас нет на сайте
| Цитата (killman13) может для того, чтобы выставлять более точную оценку, будешь использовать 10 бальную шкалу? Цитата (Switch) Можете аргументировать? Лучше бы вообще по стобальной (в процентах) оценивали, от 1 до 100, а то получается, что у "Ant" и "NFS" один и тот же уровень, пусть даже в разных жанрах и весовых категориях... Ну и вообще, мы не в школе же, чтобы пятёрки играм ставить, тут нужно быть серьёзнее, если не можешь быть объективным.
Цитата (EvilT) Switch, я тот кто обижен на тебя, товарищЪ трепло... в рамках держать себя нужно, и не лезть туда куда не просят...(раз не занимаешься распространением и разработкой) и ты мне рот не затыкай уважаемый, я же тебе не закрывал, когда ты плакался админам.... А с этого места по-подробнее. Интересно узнать про тёмное прошлое нашего "критика игр любителя".
Цитата (Switch) Присылайте игры. Буду рад оценить их! Хм, попробуй-ка, если не сложно, оценить мою "Te-tra x2". Только я её не доделал, лень все задуманные функции реализовывать, да и то что есть оптимизировать надо, там кое-какие ошибки - потом, может быть, всё переделаю и доделаю, но текущая версия вполне играбельна и содержит всё, чтобы считаться готовым тетрисом... Посмотрим, как сильно ты занизишь мне свою оценку и сколько десятков минусов в ней откопаешь.
|
|
|
| |
| TimKruz | Дата: Пятница, 11 Января 2013, 23:38 | Сообщение # 2522 | Тема: Продам тело, как рекламную площадку. |
старожил
Сейчас нет на сайте
| miniGamer, если ты действительно это всё серьёзно задумал, то ты неправильно начал это дело. Чтобы был успех и ощутимая прибыль, тебе нужно проапгрейдить внешность до фотомодельной (дабы привлекать больше внимания; но можно просто найти фотомодель и её обрабатывать; даже лучше делать всё вдвоём - мужчина-баннер и женщина-баннер, чтобы было ещё больше внимания, т.к. пол всё-таки будет влиять на аудиторию просматривающих рекламу), переехать жить или путешествовать в Европу/Америку или более тёплые (дело не в холоде, а в том, что тело не должно засыпать снегом) и популярные у туристов (это главное, а то аборигены быстро привыкнут, а туристы даже фоткаться рядом будут - это плюс к рекламе) страны и ходить всегда исключительно в сандалиях и шляпке (больше ничего; волосы тоже сбрить, кроме головы) в сопровождении одного-двух охранников. Далее нанести надписи вида "реклама на коже, недорого" и ждать клиентов. Однако вместо примитивной татуировки (это каменный век) следует использовать цветные краски, несмываемые водой (только специальным растворителем, не повреждающим кожу) - тогда можно будет менять рекламу и вообще картинки-надписи хоть каждый день, а это снижает цену для рекламодателей, увеличивает число покупателей и т.д., короче, сплошные преимущества. Идея, конечно, не новая, но приличной реализации что-то не было.
На счёт преимуществ такой рекламы: я бы не побежал покупать продукт фирмы N, если бы её название и картинка были бы нарисованы на гуляющей голой фотомодели, т.к. реклама остаётся просто рекламой, как не извращали ли бы место её размещения... Однако, бесспорно, на многих такая реклама произведёт впечатление, если, конечно, будет должным образом реализована...
P.S. Я всё это серьёзно, шутить на эту тему смыла не вижу.
|
|
|
| |
| TimKruz | Дата: Суббота, 12 Января 2013, 00:00 | Сообщение # 2523 | Тема: Критика компьютерных игр от Switch |
старожил
Сейчас нет на сайте
| Цитата (Racot) Тогда сначала доделай, а потом писать бессмысленный пост. Ты хоть понимаешь как можно оценить недоделанный тетрис? Оценить всё что хочешь можно, просто оценивать нужно относительно конкретного этапа развития проекта. Да и версия ведь играбельна, ощутимых пользователем багов не содержит... И вообще, я уже писал тут где-то, что критика проектов в разработке важнее и полезнее, чем полностью оконченных - ведь она может помочь разработчику, а для завершённого проекта она практически бесполезна, это ведь не реклама.
Кстати, у мобипака игра тоже не особо доделанная: делал-делал, перескочил с 0.39 на 0.9, и в итоге ничего интересного не получилось...
Да и вообще, я же никого не заставляю и даже не требую что-либо оценивать. Я просто предложил, а там посмотрим на качество его критики, быть может, она окажется мне полезной. Цитата (Racot) Человек занимается делом, а ты все время камни в город ему кидаешь. Не надоело? Каким делом? Он сам сказал, что это хобби, а хобби - не дело. А если камни в "город" не кидать, то он никогда лучше не станет, а наоборот, на всеобщей похвальбе и сплошном позитиве быстро деградирует (проверено на опыте различных людей; не пытайтесь повторить это дома).
Сообщение отредактировал TimKruz - Суббота, 12 Января 2013, 00:06 |
|
|
| |
| TimKruz | Дата: Суббота, 12 Января 2013, 16:56 | Сообщение # 2524 | Тема: Критика компьютерных игр от Switch |
старожил
Сейчас нет на сайте
| Цитата (Racot) Оценит хорошо, ты скажешь что не адекват, плохо - аналогично. Да мне не важно, хорошо или плохо он оценит, а важно мнение со стороны. И я не считаю его неадекватным. Цитата (Racot) оклеветать ТС, снова Где я его оклеветал? И зачем мне вообще на него клеветать?
Цитата (Switch) Извините, но недоделанные игры я критиковать не буду. Доделайте, пожалуйста, ваш проект или серьезно к нему отнеситесь. Ясно... Цитата (Switch) Буду делать их более объективнее. Это правильно, только не надо описывать всё до мелочей типа "в меню 6 кнопок, это: ..., кнопка 1 такая-то, кнопка 2 такая-то...", просто скриншоты нужно прикладывать в таких местах, если так хочется описать внешний вид игры. А ссылку в конце оставлять не на прямое скачивание, а на тему на GCUP или официальный сайт игры.
Цитата (Anim) а "критик" - это профессия. Цитата (Wikipedia) Критик (греч. κριτικός, от κριτική — искусство разбирать, судить) — человек (специалист), сферой деятельности которого является критика, то есть анализ, оценка и суждение о явлениях какой-либо из областей человеческой деятельности, обычно в сфере культуры. ...К критикам относят знатоков и ценителей, обычно профессионально подготовленных, которые регулярно оценивают и анализируют ... произведения различных искусств и, как правило, публикуют свои наблюдения и суждения... Ну кое-какая оценка у него есть, суждение тоже, и даже какие-то зачатки анализа у него вроде бы проявляются, если присмотреться... В остальном просто описание... Но вот является ли он знатоком и ценителем видеоигр - в этом я сильно сомневаюсь. Ну максимум любителем, и то определённых жанров. А профессионалом критик становится тогда, когда пишет статьи для журналов или электронных порталов, за что получает серьёзное денежное вознаграждение...
|
|
|
| |
| TimKruz | Дата: Суббота, 12 Января 2013, 17:18 | Сообщение # 2525 | Тема: [?]Delphi: Запись части строки в переменную |
старожил
Сейчас нет на сайте
| Mails и Pass - это TMemo, правильно? Как-то так: Код procedure TForm1.Button1Click(Sender: TObject); var s:string; begin OpenDialog1.InitialDir:=ExtractFilePath(Application.ExeName); if OpenDialog1.Execute then if FileExists(OpenDialog1.FileName) then //Проверяем существование файла begin Mails.Lines.Clear; //Именно lines.clear, а не просто clear Pass.Lines.Clear; AssignFile(input,OpenDialog1.FileName); Reset(input); while not eof(input) do //До конца файла begin readln(input,s); //Вот это я у karuy скопировал. //Тут всё просто - Pos(строка №1, строка №2) ищет строку №1 (символ) в строке №2 //и возвращает позицию первого её вхождения, //а Copy(строка, первый символ, последний символ) возвращает подстроку указанной длины из заданной строки. Mails.Lines.Add(Copy(s, 1, Pos(';', s) - 1)); Pass.Lines.Add(Copy(s, Pos(';', s) + 1, Length(s))); end; Label2.Caption:=inttostr(Mails.Lines.Count); end else MessageDlg('Файл не существует!',mtError,[mbOk],0); end;
|
|
|
| |
| TimKruz | Дата: Понедельник, 21 Января 2013, 16:34 | Сообщение # 2526 | Тема: Delphi:Вопрос-Ответ |
старожил
Сейчас нет на сайте
| Цитата (masb8ly-GC) canvas не лучший способ хранения графики Ну если ты игру пишешь, то у тебя минимум 30 кадров в секунду, так что канва формы будет постоянно обновляться. Канва TImage просто сама по себе обновляется заданной картинкой, поэтому сохраняет изображение. А канва TForm вроде бы по-умолчанию непрерывно обновляется, поэтому просто нарисовать не получится, нужно самому всё обновлять (если вручную [средствами WinAPI, без использования VCL] создать окно - такого не будет, т.к. обработчик события перерисовки окна самому писать надо, хотя не обязательно). Если у тебя игра не использует какие-то сложные компоненты VCL (ну которые ты кидаешь на форму), то лучше создавать окно вручную, так быстрее должно получиться (правда структура приложения усложнится и никакими дизайнерами не воспользуешься). А вообще, для игр лучше OpenGL использовать... Конечно, он устроен иначе, и придётся потратить какое-то время на его изучение, но вообще-то ничего в нём особо сложного нет... Вот, например, книга: Краснов М.В., "OpenGL графика в проектах Delphi", там основы просто и понятно изложены.
Короче, изучай всё постепенно, но не старайся написать очень сложную (графически) игру чисто на канве image и тому подобного...
|
|
|
| |
| TimKruz | Дата: Четверг, 24 Января 2013, 21:08 | Сообщение # 2527 | Тема: Перевод строки в Edit |
старожил
Сейчас нет на сайте
| Flaut, tedit использует только одну строку text. Для многострочных текстов (без форматирования) используется компонент tmemo - он содержит динамический массив строк lines. Строка в него добавляется функцией add (вроде бы memo.lines.add('строка'), точно не помню).
|
|
|
| |
| TimKruz | Дата: Воскресенье, 27 Января 2013, 20:32 | Сообщение # 2528 | Тема: Delphi:Вопрос-Ответ |
старожил
Сейчас нет на сайте
| Цитата (Destroy) вот у меня например есть 3 переменные img1, img2, img3. можно ли сделать что то типа imgN, где N (1,2,3) то есть мне не нужен массив. в зависимости от значения N вызывается разные img чтобы имя переменной изменялось Так сделать не получится (вообще, по-моему, ни в одном компилируемом языке нельзя менять идентификаторы "на лету", потому что в коде не может быть двусмысленности - компилятор просто не поймёт такого imgN). Придётся использовать массив img[n], а если требуется задание неопределённого заранее числа переменных - использовать динамический массив. Если ты не можешь использовать массивы напрямую, например, у тебя заранее созданы визуальные компоненты с именами img1/img2/../imgn, а ты хочешь перебирать их циклом for - тогда можно использовать массив указателей. Каждый элемент массива img содержит ссылку на соответствующий компонент. Если ты используешь классы (типа TImage), то можно сделать так: Код type TForm1=class(TForm) img1,img2,img3:TImage; //Описание компонентов в классе формы <...> var img:array [1..3] of TImage; //Где-то задан массив указателей на эти компоненты <...> //Где-то копируем ссылки на экземпляры класса TImage в наш массив img[1]:=img1; img[2]:=img2; img[3]:=img3; <...> //А тут используем их в цикле: for i:=1 to 3 do img[i].canvas.clear; <...> Вроде бы должно работать. Писать в месте копирования ссылок много, но если циклов for достаточно много - будет всё-таки проще делать так.
Теоретически, можно в классе формы (TForm1) задать массив компонентов img:array [1..3] of TImage, только, наверное, возникнут сложности с редактором форм. Но в обычном классе (не привязанном к редактору форм) такое легко делается.
|
|
|
| |
| TimKruz | Дата: Воскресенье, 27 Января 2013, 20:46 | Сообщение # 2529 | Тема: Посчитать прямоугольники на клеточном листе |
старожил
Сейчас нет на сайте
| Цитата (vicu2010) Пусть a[i,j] то i : колонки j : строки Я сам путаюсь. Тут всё зависит от того, в каком порядке выводить на экран/бумагу. Ну вот, например, кусочек кода: Код figure:array[0..1,0..3,0..3]of boolean=
(((true,true,false,false), (true,true,false,false), (false,false,false,false), (false,false,false,false)),
((true,false,false,false), (true,false,false,false), (true,false,false,false), (true,false,false,false))); Это трёхмерный массив-константа (в оригинале у меня он во много раз больше, вместо 0..1 стоит 0..figs*4, это 41 блок, офигеть можно, но комментарии над каждым блоком спасают). Первая размерность - основные блоки, их два, это как бы слои или отдельные матрицы. Вторая - строки матрицы, их по четыре в блоке первого уровня. Ну и третья - отдельные значения, их тоже по четыре в строке. Но при выводе на экран можно вместо figure[i,x,y] написать figure[i,y,x] и получить вместо строк столбцы и наоборот.
Ну и вот ещё: a:array of array of byte означает, что a - это массив массивов байт, т.е. первое число в записи a[x,y] выбирает номер второго массива, а второе число выбирает номер элемента в выбранном втором массиве. Опять же, что считать строками, а что столбцами - зависит от тебя. А в задачах на многомерные массивы всегда указывают, что в их понимании является строкой, а что столбцом.
|
|
|
| |
| TimKruz | Дата: Понедельник, 28 Января 2013, 18:37 | Сообщение # 2530 | Тема: Порталы, как в Portal. |
старожил
Сейчас нет на сайте
| Как конкретно в Portal - не знаю, но самый простой вариант - делать как зеркала. Т.е. делается дырка в стене, а за ней - вторая сцена, копия первой, только с определённой точки зрения и под определённым углом (если второй портал открыт). Ну и при переходе объекта из портала в портал просто одна копия выходит в основную сцену, а вторая уходит в дополнительную. Или можно рисовать одну сцену с разных позиций, сохранять "скриншот" в памяти и использовать как текстуру портала, а для перехода создавать копию объекта в другом месте. Т.е. первая прорисовка в заднем буфере формирует изображение "из портала", картинка сохраняется как текстура, буфер перерисовывается картинкой "из глаз игрока" и выводится на экран. Только ещё угол зрения учитывать придётся...
|
|
|
| |
| TimKruz | Дата: Понедельник, 28 Января 2013, 18:45 | Сообщение # 2531 | Тема: ZenGL |
старожил
Сейчас нет на сайте
| Цитата (vicu2010) 1.Можно ли зенглу подключить к PascalABC.Net Можно, т.к. ZenGL - это набор библиотек, а PascalABC.NET позволяет использовать библиотеки. Но лучше использовать Delphi или Lazarus. Цитата (vicu2010) 2.Есть ли уроки по зенгле? Есть. Ещё на официальном сайте есть wiki и форум. Цитата (vicu2010) 3.Еслть ли инфа как его подключить к компиляторам. Всё там же, на официальном сайте.
|
|
|
| |
| TimKruz | Дата: Понедельник, 28 Января 2013, 19:24 | Сообщение # 2532 | Тема: Ищу исследователя программ для урегулирования глюка в движке |
старожил
Сейчас нет на сайте
| Цитата (KamiRonin) Нужен исследователь программ, чтобы отследить как конкретный exe'шник взаимодействует с интернетом - точки выхода, способы проверки. и закольцевать или поставить заглушку в нужных местах движка или снаружи. Можно попробовать загрузить exe в любой отладчик, который позволяет по шагам выполнять инструкции программы. Отключаем интернет, и жмём кнопку "далее" (в смысле переход к следующей инструкции) до тех пор, пока не выскочит ошибка аутентификации. Смотрим на ближайшие инструкции и либо забиваем оператором nop то, что выкидывает ошибку, либо ищем точку перехода, которая срабатывает после удачной аутентификации, и копируем в место, обрабатываемое в случае неудачи. Или можно найти ту развилку, где проверяется результат запроса серверу. Короче, нужен отладчик, базовые знания Ассемблера и от нескольких часов до нескольких дней свободного времени... Это я к тому, что любой разбирающийся в программировании человек сможет снять эту защиту с программы, правда времени может потребоваться много, но ещё дольше ты будешь искать способных энтузиастов, готовых крякнуть чего-нибудь чисто ради спортивного интереса. Хотя, если на каком-нибудь "хакерском" форуме написать... Цитата (KamiRonin) интеллектуальная собственность на FREE продукт?! ты гений! Ну интеллектуальная собственность на всё есть, а free ещё не означает, что ты можешь делать с продуктом всё, что захочешь. Нужно читать документы (конкретную лицензию, пользовательское соглашение), что конкретно они разрешают, а что запрещают. Но, в любом случае, изменение кода программы запрещено и... ну, как бы наказуемо, особенно если ты это делаешь не для себя, а для целого сообщества. Всё равно, что взломать платный продукт. Цитата (coder) А если (скорее всего так и есть) онлайн-проверки раскиданы по всему исполняемому коду движка, а не только в этом конкретном файле? Это вряд ли, т.к. любая онлайн-проверка тормозит среду разработки. Да и не имеет смысла проверять постоянно, достаточно проверки перед запуском основной программы. Но могут быть резервные участки кода, которые срабатывают, если первая проверка "волшебным образом" пролетела (не дала ни положительного, ни отрицательного результата); но их можно будет найти так же, как и первую.
|
|
|
| |
| TimKruz | Дата: Вторник, 29 Января 2013, 09:12 | Сообщение # 2533 | Тема: ZenGL |
старожил
Сейчас нет на сайте
| Делфи мощнее и оптимизированнее во много раз. А на Лазарусе можно кроссплатформенные приложения делать, хотя на Делфи тоже можно, но вроде бы у Лазаруса платформ больше... Плюс Лазарус бесплатный... А PascalABC.NET вроде как к дотнет привязан намертво, да и вообще он исключительно в учебных целях разрабатывается... Цитата (vicu2010) По мне так у делфи и лазаруса неудобный интерфейс... Как можно сравнивать профессиональный интерфейс с простейшим интерфейсом для школьников? Кстати, всё (ну или почти всё) там настраивается... Да и нельзя же выбирать среду разработки по интерфейсу...
|
|
|
| |
| TimKruz | Дата: Четверг, 31 Января 2013, 09:51 | Сообщение # 2534 | Тема: опрос: базовые уроки по разработке игр на android |
старожил
Сейчас нет на сайте
| Цитата (friend) corona, gideros, AGK Эх... Кто бы написал пару уроков про программирование игр (OpenGL) на Lazarus/Delphi под Android без использования дополнительных движков... Как хелловорд скомпилировать найти ещё можно, но более подробно ничего не нашёл пока, придётся самому всё искать и экспериментировать...
А в опросе голосую за "да" - любые уроки важны, особенно новичкам, а в этой области, я думаю, не так уж много уроков, в отличие от ПК...
|
|
|
| | |
| TimKruz | Дата: Четверг, 31 Января 2013, 22:01 | Сообщение # 2536 | Тема: Баг рассылки с форума |
старожил
Сейчас нет на сайте
| Цитата (TLT) Управляйте своими подписками на специальной странице - http://gcup.ru/forum/0-0-1-46 Сейчас она не работает (отображает вообще все темы, в которых я кода-либо писал сообщения), но потом сделайте, пожалуйста, ссылку на неё из профиля (под "изменить данные", например). Цитата (TLT) После её решения этот функционал будет доставлять вам радость своей полезностью. Это верно - очень удобно подписаться на интересующий раздел, чтобы сразу узнавать о новых темах в нём, а то сейчас приходится самому переодически проверять...
|
|
|
| |
| TimKruz | Дата: Четверг, 31 Января 2013, 22:20 | Сообщение # 2537 | Тема: Как сообщить о ложном срабатывании антивирусу Avast? |
старожил
Сейчас нет на сайте
| Ну аваст обычно сносит все подозрительные файлы в карантин, если не менять настройки мониторов. Открываешь аваст со значка в трее, слева список разделов, выбраешь, кажется, предпоследний - "обслуживание", там будет кнопка "карантин". Нажимаешь - открывается список файлов в карантине. Ищешь свою программу, кликаешь правой кнопкой - там будет пункт "сообщить о ложном срабатывании" или типа того. Нужно будет заполнить форму, типа почему считаешь ложным, и файл отправится на сервер аваста, а что потом - не знаю, никогда не пользовался... Можешь ещё в настройках мониторов покапаться, там можно, например, отменить перемещение в карантин... Или отключать экраны аваста на то время, когда пользуешься этой программой, если доверяешь ей.
Кстати, что бы там не говорил автор программы - проблема действительно может быть: либо он использует какой-то небезопасный код, оцениваемый антивирусами как троянский (со мной было такое), либо сжимает aspack'ом или ему подобным - некоторые антивирусы это не любят (хотя авасту вроде бы пофиг на такую упаковку), либо у него среда разработки вирусом заражена (например, у Делфи такая проблема бывает - делфи-программа ищет и меняет важный юнит в установленной Делфи, после чего эта копия Делфи штампует такие же программы-вирусы, но лечится легко).
|
|
|
| |
| TimKruz | Дата: Пятница, 01 Февраля 2013, 20:47 | Сообщение # 2538 | Тема: Как сообщить о ложном срабатывании антивирусу Avast? |
старожил
Сейчас нет на сайте
| Цитата (TimKruz) кликаешь правой кнопкой - там будет пункт "сообщить о ложном срабатывании" или типа того. Поправка (сейчас глянул): по правой кнопке будет пункт "передать в лабораторию..." - открываешь, выбираешь "Тип: ложная тревога" и заполняешь остальные пункты. Цитата (tifaso) Не здесь аваст на сам файл реагирует только голосовым оповещением. Т.е. не блокирует? Странно, вообще-то должен в карантин снести... Можно ещё попробовать установить исключение: "Экраны в реальном времени" > "Экран файловой системы" > "Расширенные настройки" > "Исключения" > вводишь путь и/или имя программы и ставишь три галочки. Цитата (tifaso) я её ранее сканировал многими другими антивирусами Лучше просто сразу на http://virustotal.com/ закинуть. Цитата (tifaso) Это просто антивирусным компаниям лень искать и вырубать по одному эти фейки вот и вырубают студию на которой их пишут. Никакие среды разработки целиком в базы вирусов не вносят, да и часто нет возможности выяснить, на чём написана программа (если правильно обфусцирована или среда сама по себе не оставляет следов). В базы вирусов вносят куски потенциально опасного кода, который может использоваться в плохих целях хакерами. Например, у меня была такая проблема: я в одной свой программе сделал сохранение/загрузку настроек в реестр Windows, но при этом я сделал так, что программа проверяла и меняла реестр ещё до появления формы на экране - и некоторые антивирусы сочли её трояном; однако, стоило мне изменить порядок действий для проверки ключей реестра - всё заработало отлично и антивирусы замолчали. Цитата (tifaso) А не его нету в списках. Я даже не знаю как делать то. В исключениях уже везде стоит. Пиши яснее, я ничего не понял...
|
|
|
| |
| TimKruz | Дата: Суббота, 02 Февраля 2013, 20:26 | Сообщение # 2539 | Тема: Как сообщить о ложном срабатывании антивирусу Avast? |
старожил
Сейчас нет на сайте
| Цитата (tifaso) Я уже в исключения поставил и папку с программой и этот файл, а сам антивирус орёт, но только звуковое оповещение. При сканировании этого файла аваст вирусов не обнаруживает, но срабатывает при запуске. Странно, странно... По тому, как ты описываешь - явно ненормальное поведение... Попробуй обратиться в техподдержку, там можно вопрос специалистам задать или на форуме порыться...
Может быть, у тебя сам антивирус заразился и с ума понемножку сходит - бывает и такое. Хорошо бы задать тщательное сканирование до загрузки Windows (позволяет выявить вирусы, давно и крепко засевшие в систему), ну или можно специальными утилитами-сканерами воспользоваться, есть компактные, но мощные...
|
|
|
| |
| TimKruz | Дата: Понедельник, 04 Февраля 2013, 17:30 | Сообщение # 2540 | Тема: Мои вопросы по обучению на Delphi XE и помощь к созданию игр |
старожил
Сейчас нет на сайте
| //Цитата (Александр5) дайте ссылку на 2d игровой движок ZenGl Разве так сложно было в любом поисковике ввести "ZenGL" и получить ссылку на официальный сайт? Или воспользоваться поиском на gcup и получить ссылку на эту страницу. Цитата (Александр5) а что может иметь больше 255 Вместо строк можно использовать массив символов, массивы по размерам ограничены вроде бы только оперативной памятью. Но вообще-то, строка может содержать больше 255 символов, просто остальные (начиная с 256) как бы не учитываются, хотя с ними можно работать. В любом случае, простая строка с фиксированной длиной не может быть больше 255 символов. Но кроме простой (string) строки в Delphi есть ещё другие типы строк, точно не знаю (не интересовался никогда), но, возможно, есть более длинные типы... Цитата (Александр5) можно ли в рекорд записывать картинку Используешь TBitMap или ему подобный. Цитата (Александр5) лучше как создать файл данных который бы смог содержать данные такие как integer, string, byte, tbitmap, tpngimage и т.д, и как сделать запись, и загрузку этих файлов. Соответствующая запись делается легко, но если у неё не будет фиксированного размера, то стандартными методами записывать в файл её не получится, но это можно делать вручную. Т.е. с фиксированной по размеру записью можно сделать так: Код type tsomerecord=record text:string[20]; //строка фиксированной длины; всегда занимает 20 байт end; ... var somefile:file of tsomerecord; //типизированный файл записей somerecord:tsomerecord; ... read(somefile,somerecord); write(somefile,somerecord); Но с записью, в которой есть, например, s:string, такой трюк не пройдёт, и придётся писать чтение/запись вручную. Как-то так: Код type tsomerecord=record text:string; //строка неопределённой длины; может иметь разную длину number:word; end; ... var somefile:file; //нетипизированный файл; в нём можно использовать только blockread/blockwrite somerecord:tsomerecord; buf:byte; ... //Чтение: reset(somefile,1); //1 означает, что за один раз считывается/записывается 1 байт blockread(somefile,buf,1); //считываем один байт - это у нас будет длина строки setlength(somerecord.text,buf); //не уверен, но вроде бы строке сначала нужно длину задать blockread(somefile,somerecord.text[1],buf); //считываем buf блоков по байту в строку text blockread(somefile,somerecord.number,2); //считываем два блока по байту в переменную //number типа word, т.к. тип word занимает 2 байта ... //Запись: rewrite(somefile,1); buf:=length(somerecord.text); blockwrite(somefile,buf,1); //записываем длину строки - один байт blockwrite(somefile,somerecord.text[1],buf); //записываем buf байт из строки blockwrite(somefile,somerecord.number,2); //записываем число number из 2 байт Не могу гарантировать полную работоспособность кода (проверять лень), но направление размышлений я тебе задал. С tbitmap и т.п. будет сложнее, но можно использовать встроенную функцию класса - SaveToFile, а потом просто копировать полученный файл в твой бинарный файл с записями. Цитата (Александр5) как игровой движок ZenGl установить на Delphi Там, наверняка, набор библиотек, которые подключаются как простые модули или через заголовочные модули, если, конечно, ты всё под Windows для Windows делаешь. В любом случае - читай документацию с официального сайта.
|
|
|
| |
|