Результаты поиска
| |
1nt3g3r | Дата: Вторник, 26 Июля 2016, 14:37 | Сообщение # 41 | Тема: Лаги в игре на андроид |
почетный гость
Сейчас нет на сайте
| vampir0305, сталкивался с такой же проблемой - неровный и низкий FPS в юнити на Android. Создал новый проект, полностью пустую сцену - все же 30-40 FPS (Телефон - Impression I'm Smart 1.45 - не топовый, но и не самая плохая железка, что-то там двухьядерное по 1.2, 512 МБ оперативной памяти). Потом почитал статьи людей - пишут, что много у кого в Unity 5 проект тормозит. Именно Unity 5 - предыдущие версии работают нормально. Поэтому в вашем случае имеет смысл проверить на более ранней версии Unity ваш проект.
P. S. Потом я переписал свою игрушку на libgdx, и получил стабильные 60 FPS на всех устройствах, и понял, что мне больше нравятся низкоуровневые движки.
Нужно писать такие игры, чтобы в них было интересно играть самому
|
|
| |
1nt3g3r | Дата: Пятница, 08 Июля 2016, 14:41 | Сообщение # 42 | Тема: Процедуры для работы с мышью в PascalABC |
почетный гость
Сейчас нет на сайте
| Gudleifr,
Цитата Ну, я как бы попросил Вас помочь коллеге, а не путать его. Путаете как раз вы. У вас манера общения снисходительно-высокомерная, вы считаете себя самым умным. К сожалению, по содержанию ваших постов этого не видно.
Цитата Мы же договорились - я указываю коллеге на ошибки, а Вы - их исправляете, и, заодно, учитесь. Пункт первый - МЫ НЕ ДОГОВАРИВАЛИСЬ. Вы опять приписываете мне не мои слова - наверное, вы забываете, что писал я, а что писали вы (у старых людей бывает такая болезнь).
Пункт второй - НЕ НУЖНО МЕНЯ УЧИТЬ. Вы не есть для меня авторитет. Вы не более чем тролль (иногда вы троллите тонко, иногда толсто), но никак не учитель.
Нужно писать такие игры, чтобы в них было интересно играть самому
|
|
| |
1nt3g3r | Дата: Пятница, 08 Июля 2016, 12:12 | Сообщение # 43 | Тема: Процедуры для работы с мышью в PascalABC |
почетный гость
Сейчас нет на сайте
| Gudleifr,
Цитата Цитата 1nt3g3r () не понимаю сути вашей проблемы Дык, я же объяснил.
Я обращался не к вам, но вы все обьяснили за человека. Вы очень проницательны и умеете отвечать за других. Отличная привычка!
Цитата Цитата 1nt3g3r () я забыл поставить точку с запятой перед end Наоборот, точка с запятой перед end - это ошибка. Да - после end, спасибо за подсказку, точно подмечено, сразу видно, что у человека большой, я бы сказал, ДРЕВНИЙ, опыт в программировании!
Нужно писать такие игры, чтобы в них было интересно играть самому
Сообщение отредактировал 1nt3g3r - Пятница, 08 Июля 2016, 12:12 |
|
| |
1nt3g3r | Дата: Пятница, 08 Июля 2016, 09:52 | Сообщение # 44 | Тема: Процедуры для работы с мышью в PascalABC |
почетный гость
Сейчас нет на сайте
| AKukuruz, не понимаю сути вашей проблемы) Специально поставил PascalABC, проверил свой код:
(прямая ссылка, если не видно картинку - https://www.dropbox.com/s/6oxpbld3wxvzw87/Скриншот 2016-07-08 09.46.13.png?dl=0)
Единственная ошибка в моем коде - я забыл поставить точку с запятой перед end.
Цитата uses GraphABC;
var oldX, oldY: integer; //координаты мышки
procedure MouseDown(x,y,mb: integer); begin if mb=1 then begin if ((oldX <> 0) and (oldY <> 0)) then Line(oldX, oldY, x, y);
oldX := x; oldY := y; end end;
begin SetWindowTitle('123'); Setwindowsize(800,600); //размер окна
OnMouseDown:=MouseDown; end.
Это полностью рабочий вариант (скопированный прямо из PascalABC). Как мы избегаем рисования линии при первом нажатии - мы смотрим на (oldX, oldY). Если они оба равны нулю (а такое может быть лишь при первом клике) - мы ничего не делаем. А начиная со второго клика - начинается рисование.
Нужно писать такие игры, чтобы в них было интересно играть самому
|
|
| |
1nt3g3r | Дата: Четверг, 07 Июля 2016, 23:33 | Сообщение # 45 | Тема: Лужу, паяю, ЭВМ починяю... |
почетный гость
Сейчас нет на сайте
| Gudleifr,
Цитата Цитата 1nt3g3r () Заметьте, ПОСЛЕ того, как вы привели аргументы, вопросы к вам отпали. Брехня. Ответы были даны в постах #7 и #13, а обвинения в неаргументированности - вплоть до #23. Нет - после того, как вы аргументировали свою мысль, я написал, что вопросов по данному пункту больше не имею.
Цитата Цитата 1nt3g3r () Называть людей, которые пишут коммерческие продукты, быдлокодерами, а их занятие - быдлокодингом - это немного высокомерно, не находите? Это немного неуместно в этой теме. Тем более, что обвиняли их в быдлокодинге Вы: "лучше программа с ошибками сегодня, чем программа без ошибок через год".
Про быдлокодинг начали вы. Я не обвиняю никого в быдлокодинге (но и не поощряю его). Моя мысль проста - программ нужно много, а идеальных программистов мало. Поэтому приходится мириться с этой ситуацией, и допускать существование неидеальных программ. Но поскольку слишком много ошибок это недопустимо - придумали инструменты, чтобы улучшить ситуацию - в том числе и TDD.
Нужно писать такие игры, чтобы в них было интересно играть самому
|
|
| |
1nt3g3r | Дата: Четверг, 07 Июля 2016, 22:51 | Сообщение # 46 | Тема: Процедуры для работы с мышью в PascalABC |
почетный гость
Сейчас нет на сайте
| AKukuruz, код, что вы нагуглили - фактически, тот код, что привел вам я. Только в моем варианте как раз и учтено рисовать линию лишь после первого клика.
Нужно писать такие игры, чтобы в них было интересно играть самому
|
|
| |
1nt3g3r | Дата: Четверг, 07 Июля 2016, 22:48 | Сообщение # 47 | Тема: Лужу, паяю, ЭВМ починяю... |
почетный гость
Сейчас нет на сайте
| Цитата Цитата 1nt3g3r () Вы со скрипом обосновали лишь один пункт ваших многочисленных раздумий. Заметьте ДО того, как Вы облыжно обвинили меня в обратном. Я же специально дал Вам право "свободного выстрела". Я вас ни в чем не обвиняю - я прошу, чтобы вы обосновывали то, что вы пишете. Заметьте, ПОСЛЕ того, как вы привели аргументы, вопросы к вам отпали.
Цитата Цитата 1nt3g3r () Если мы пройдемся по всему, что вы писали... Хотите еще попробовать? Возможно. Пока дам вам время отдохнуть.
Цитата А разве в названии темы есть что-то про коммерческую разработку? Мы говорим о программировании, а не о быдлокодинге. Заранее повтряю цитату Дейкстры: Цитата Наконец, эта задача позволяет нам рассеять некоторые сомнения, вызванные тем, что коммерческие программы являются чем-то особенным. (Если уж говорить о чем-то особом, то, скорее, о характере коммерческих программистов...). Есть и коммерческие программы высочайшего класса. Так что нельзя говорить про коммерческую разработку, как о чем-то плохом. Называть людей, которые пишут коммерческие продукты, быдлокодерами, а их занятие - быдлокодингом - это немного высокомерно, не находите?
Нужно писать такие игры, чтобы в них было интересно играть самому
|
|
| |
1nt3g3r | Дата: Четверг, 07 Июля 2016, 22:30 | Сообщение # 48 | Тема: Процедуры для работы с мышью в PascalABC |
почетный гость
Сейчас нет на сайте
| AKukuruz, да, в моем варианте есть некоторые моменты. Верный код будет примерно таким:
Цитата uses GraphABC;
var oldX, oldY: integer; //координаты мышки
procedure MouseDown(x,y,mb: integer); begin if mb=1 then begin if ((oldX <> 0) and (oldY <> 0)) then Line(oldX, oldY, x, y);
oldX := x; oldY := y; end end
begin SetWindowTitle('123'); Setwindowsize(800,600); //размер окна
OnMouseDown:=MouseDown; end.
Мой основной язык сейчас - Java, синтаксис Pascal-я уже немного подзабылся...
Нужно писать такие игры, чтобы в них было интересно играть самому
|
|
| |
1nt3g3r | Дата: Четверг, 07 Июля 2016, 22:15 | Сообщение # 49 | Тема: Процедуры для работы с мышью в PascalABC |
почетный гость
Сейчас нет на сайте
| AKukuruz, не пишите "a : = x", пишите - "a := x". Пробел между двоеточием и знаком равно - его там не должно быть.
Нужно писать такие игры, чтобы в них было интересно играть самому
|
|
| |
1nt3g3r | Дата: Четверг, 07 Июля 2016, 22:14 | Сообщение # 50 | Тема: Лужу, паяю, ЭВМ починяю... |
почетный гость
Сейчас нет на сайте
| Gudleifr,
Цитата Я написал, что "Тестирование программы не может доказать отсутствия в ней ошибок"? Я привел обоснование? Я привел пример? Я привел ссылку на литературу? Да - здесь вы сделали именно так, как нужно - обоснование, пример, литература. Здесь вопросов нет.
Цитата Так где Ваше: "Простите, дяденька, засранца!"? Вы со скрипом обосновали лишь один пункт ваших многочисленных раздумий. Если мы пройдемся по всему, что вы писали, боюсь, что вы будете вынуждены просить прощения у всего форума.
Цитата А то, что Ваше: "Но бОльшую часть - вполне",- это обычная присказка быдлокодера, это уже совсем другой вопрос. Вы не понимаете сути коммерческой разработки - лучше программа с ошибками сегодня, чем программа без ошибок через год. Я понимаю, что ваш внутренний эстет этому противится - но реальная жизнь заставляет иногда выпускать продукт быстро, а ошибки править позже. Это касается не только разработки програмного обеспечения.
Нужно писать такие игры, чтобы в них было интересно играть самому
|
|
| |
1nt3g3r | Дата: Четверг, 07 Июля 2016, 21:45 | Сообщение # 51 | Тема: Процедуры для работы с мышью в PascalABC |
почетный гость
Сейчас нет на сайте
| AKukuruz, Цитата В строке a: = x; ругается что "Встречено ':', а ожидалось ';'" - это потому, что вы пишете двоеточие отдельно от знака равно - ": =" (между ними пробел). Нужно писать слитно, без пробела.
Нужно писать такие игры, чтобы в них было интересно играть самому
|
|
| |
1nt3g3r | Дата: Четверг, 07 Июля 2016, 21:42 | Сообщение # 52 | Тема: Лужу, паяю, ЭВМ починяю... |
почетный гость
Сейчас нет на сайте
| Цитата Совершенно не обязательно. Как Вы сами писали, 5 маленьких программ, это не одна большая. Разные программы могут использовать этот класс по-разному. Другие классы могут на него влиять. Даже настройки компилятора могут быть разными. Я однажды имел дело с программой, которая ровно на 15-й секунде душила сама себя сообщениями между вполне себе отлаженными компонентами.
Разные программы могут использовать по разному - так для этого и тестируют, чтобы как не используй, а получался правильный результат.
Другие классы могут на него влиять - идея TDD, что тестируются маленькие блоки - функции, классы - чтобы другие классы не могли влияють и оставлять в неопределенном состоянии. Впрочем, я вас понимаю в этом моменте - на стыке взаимодействия оттестированых блоков могут возникать проблемы. Я согласен, это так - но это уже проблемы более высокого, интеграционного уровня. Для этого есть другой вид тестов - интеграционные. Снова-таки, 100% без ошибок не будет, но большинство ерунды отловится. И легче отлаживать взаимодействие между отлаженными блоками, чем взаимодействие между неотлаженными блоками, вы так не находите?
Я однажды имел дело с программой, которая ровно на 15-й секунде душила сама себя сообщениями между вполне себе отлаженными компонентами. - как минимум, отдельные компоненты работают правильно - значит, искать ошибку было бы проще - на этих же стыках.
Вообще, я писал, и напишу еще раз - тесты не есть панацея от всех бед. Но при грамотном использовании они существенно снижают количество ошибок в программе.
Цитата Т.к. я не видел еще ни одной неэлементарной программы без критических ошибок, то склонен этому правилу верить. Законы Мэрфи - это не шутка, это напоминание о "трении войны". Есть закон Мэрфи, что бутерброд падает маслом вниз. А статистические исследования показывают, что падает он 50\50 маслом вниз. Законы Мэрфи - это не более, чем шутка - люди склонны подмечать плохое, а хорошее принимать за само собой разумеющееся.
Цитата Тестирование программы не может доказать отсутствия в ней ошибок Я уже писал - все ошибки вы не выловите. Но бОльшую часть - вполне. Я ни в чем вас не уличаю - я лишь уточняю, что тесты дают возможность отловить большинство критичных ошибок еще на старте.
Нужно писать такие игры, чтобы в них было интересно играть самому
Сообщение отредактировал 1nt3g3r - Четверг, 07 Июля 2016, 21:43 |
|
| |
1nt3g3r | Дата: Четверг, 07 Июля 2016, 21:01 | Сообщение # 53 | Тема: Лужу, паяю, ЭВМ починяю... |
почетный гость
Сейчас нет на сайте
| Gudleifr, есть моменты:
Цитата Тут-то его и чморнули: мол, только чайник не знает, что тестовые схемы паяются на прибалтийских транзисторах, а серийные - на ташкентских. Я скажу вам по секрету, что в компьютере байты в разных программах одинаковые. Если вы возьмете протестированный класс, и вставите его в другую программу, он будет работать точно так же - байты они одинаковые везде, что в Прибалтике, что в Ташкенте. Другое дело, что тестирование не может покрыть ВСЕ ситуации - тестирование покрывает только то, что вы протестировали. Если вы напишете функцию для решения квадратных уравнений, и протестируете ее в определенном диапазоне - она точно будет работать в этом диапазоне. Ваш пример с транзисторами показывает лишь то, что на заводе занимались херней - финальные платы собирали из других деталей, из тех, которые не тестировались. То есть, ваш пример - это эталонный образец, как НЕ НАДО делать.
Одна из фишек TDD - тесты пишутся на реальные случаи. Конкретно с вашим заводом - тестовые платы собирались бы с теми транзисторами, что пойдут в релиз, а не с левыми какими-то. Если у вас сломалась функция на каких-то данных - значит, пишем тест на эти данные, и правим функцию, чтобы она этот тест прошла. Это гарантирует, что в будущем такая ошибка уже не случится. К сожалению, я не могу вам детально расписать все преимущества TDD. Если вы заинтересуетесь, рекомендую вам книгу Кент Бек, Разработка через TDD - маленькая книга, которая немного приоткроет вам прелести TDD.
Цитата Аксиома: В любой протестированной программе есть две серьезные ошибки. И это число не зависит от числа уже выявленных и исправленных ошибок (или тех, что будут выявлены или исправлены позже).
Вас не смущает, что это Законы Мэрфи - это не более, чем шутка? Если вы и пишете такие шутки, выдавая их за аксиомы, не поленитесь указать в скобках (Закон Мэрфи). Иначе много кто (я, например) воспринимаю это серьезно - хотя это не более чем шутка.
Цитата Даже в случае полностью детерминированных машин полезность тестирования программ оказывается сомнительной. Тестирование программы может вполне эффективно служить для демонстрации наличия в ней ошибок, но, к сожалению, непригодно для доказательства их остуствия
Это слова Дейкстры из книги. Можно сделать два выводы. 1) Как минимум, не будет тех ошибок, на которые укажут тесты. 2) В реальной жизни вам не нужно 100% доказательство отсутствия ошибок (экономически нецелесобразно заниматься таким доказательством), а достаточно 95%(цифра взята с потолка). Тестирование и дает вам эти 95% - остальные 5% будут дописываться по мере поступления баг-репортов от юзеров.
Нужно писать такие игры, чтобы в них было интересно играть самому
|
|
| |
1nt3g3r | Дата: Четверг, 07 Июля 2016, 20:44 | Сообщение # 54 | Тема: Процедуры для работы с мышью в PascalABC |
почетный гость
Сейчас нет на сайте
| Цитата Цитата 1nt3g3r () Программа завершит работу лишь тогда, когда пользователь закроет окно. Формально, да. Но отработает она "до". Иначе бы некоторые On... не успели бы загрузиться. Возможно, в Pascal ABC и есть какие-либо дополнительные средства синхронизации окна с программой, но в их отсутствие с окном работают только обработчики событий. .
Вы пишете что-то не то. Создастся отдельный поток событий, привязанный к окну. Этот поток будет завершен лишь при закрытии окна. Пока окно не закрыто - программа работает.
Цитата Программный курсор стоит на "end". Это азбука любых программ, работающих с окнами Вы о чем? Какая азбука? "Програмный курсор" - что за новое понятие в информатике? Наверное, вы хотели сказать, что код между Begin и End выполнится ДО создания окна?
Нужно писать такие игры, чтобы в них было интересно играть самому
|
|
| |
1nt3g3r | Дата: Четверг, 07 Июля 2016, 20:32 | Сообщение # 55 | Тема: Процедуры для работы с мышью в PascalABC |
почетный гость
Сейчас нет на сайте
| Gudleifr, нет, вы понимаете неверно - при использовании модуля GraphABC автоматически будет создано графическое окно. Программа завершит работу лишь тогда, когда пользователь закроет окно. А пока оно открыто, он вполне может несколько раз щелкнуть мышкой где-то в окне, и что-то нарисуется (предполагаю, что будут точки рисоваться).
Нужно писать такие игры, чтобы в них было интересно играть самому
|
|
| |
1nt3g3r | Дата: Четверг, 07 Июля 2016, 20:24 | Сообщение # 56 | Тема: Лужу, паяю, ЭВМ починяю... |
почетный гость
Сейчас нет на сайте
| Gudleifr, самый первый вопрос, на который я до сих пор не получил ответа:
Цитата Цитата 1nt3g3r () Нет - если использовать TDD (Unit-тесты), время на отладку сильно сокращается.
Вы написали:
Цитата Забудьте. Это очередная байка для умственно отсталых. Единственное, что нужно знать о тестах: они ничего не доказывают. Это просто удобная кормушка для около-программистов.
Так поясните же мне, почему это байка для умственно отсталых? Поясните, приведите пример, доказывающий вашу мысль, и если есть литература (конкретно книга, автор, и желательно глава) - дайте литературу.
Нужно писать такие игры, чтобы в них было интересно играть самому
|
|
| |
1nt3g3r | Дата: Четверг, 07 Июля 2016, 20:18 | Сообщение # 57 | Тема: Процедуры для работы с мышью в PascalABC |
почетный гость
Сейчас нет на сайте
| Цитата OnMouseDown:=MouseDown; //1 клик, передаем координаты мышки в начальные координаты лайна x1: = a; y1: = b;
OnMouseDown:=MouseDown; //2 клик, передаем тоже самое только в конечные x2 : = a; y2 : = b;
Меня смущает этот код. Судя по всему, у тебя постоянно присваиваются значения к x2, y2. Как мне кажется - делай немного не так. Сохраняй последние координаты мышки в (oldX, oldX). Потом считывай координаты мышки в (x, y) и рисуй линию от (oldX, oldY) до (a, b). Примерный код:
Цитата uses GraphABC;
var oldX, oldY: integer; //координаты мышки
procedure MouseDown(x,y,mb: integer); begin if mb=1 then begin if (oldX <> 0 and oldY <> 0) then Line(oldX, oldY, x, y);
oldX = x; oldY = y; end end
begin SetWindowTitle('123'); Setwindowsize(800,600); //размер окна
OnMouseDown:=MouseDown; end.
Добавлено (07 июля 2016, 20:18) --------------------------------------------- Gudleifr, почему это - OnMouseDown как раз и случилось (случится, вернее). То, что оно не приведет к желанному результату - это другое дело.
Нужно писать такие игры, чтобы в них было интересно играть самому
Сообщение отредактировал 1nt3g3r - Четверг, 07 Июля 2016, 20:19 |
|
| |
1nt3g3r | Дата: Четверг, 07 Июля 2016, 20:06 | Сообщение # 58 | Тема: Лужу, паяю, ЭВМ починяю... |
почетный гость
Сейчас нет на сайте
| Gudleifr, нет, вы их не обосновали. Еще раз - если вы что-то назвали аксиомой - докажите это. Вы можете понять такую простую мысль? Это не слишком сложно для вас? Вы понимаете, о чем вас просят?
Нужно писать такие игры, чтобы в них было интересно играть самому
|
|
| |
1nt3g3r | Дата: Четверг, 07 Июля 2016, 19:55 | Сообщение # 59 | Тема: Лужу, паяю, ЭВМ починяю... |
почетный гость
Сейчас нет на сайте
| Gudleifr, не называйте ваши выдумки мантрами. Это всего лишь ваши выдумки, вы не можете обосновать их правильность.
Нужно писать такие игры, чтобы в них было интересно играть самому
|
|
| |
1nt3g3r | Дата: Четверг, 07 Июля 2016, 18:32 | Сообщение # 60 | Тема: Книга: Как написать компьютерную игру |
почетный гость
Сейчас нет на сайте
| fastos, а почему ассемблер древний язык? Он живее всех живых - как минимум, программы с языков высокого уровня обычно сначала транслируются в ассемблер, а потом уже в машинный код.
Немного в сторону от темы геймдева - мой друг работает с микроконтроллерами, так он пишет на ассемблере. Того же C ему не хватает - мало скорости.
Нужно писать такие игры, чтобы в них было интересно играть самому
|
|
| |
|