Пятница, 29 Марта 2024, 18:08

Приветствую Вас Гость

[ Новые сообщения · Игроделы · Правила · Поиск ]
  • Страница 3 из 6
  • «
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • »
Форум игроделов » Записи участника » 1nt3g3r [102]
Результаты поиска
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 ему не хватает - мало скорости.


Нужно писать такие игры, чтобы в них было интересно играть самому
Форум игроделов » Записи участника » 1nt3g3r [102]
  • Страница 3 из 6
  • «
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • »
Поиск:

Все права сохранены. GcUp.ru © 2008-2024 Рейтинг