Важная информация

User Tag List

Страница 7 из 10 ПерваяПервая ... 345678910 ПоследняяПоследняя
Показано с 61 по 70 из 99

Тема: Попиксельный raycasting и sjasm

  1. #61
    Veteran Аватар для Destr
    Регистрация
    26.03.2008
    Адрес
    Питкяранта
    Сообщений
    1,802
    Спасибо Благодарностей отдано 
    249
    Спасибо Благодарностей получено 
    114
    Поблагодарили
    88 сообщений
    Mentioned
    1 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от krt17 Посмотреть сообщение
    Мда, в коей веки согласен с гоблином.
    Так кинь сорцы, если не нужны уже, хоть поглядеть что и как делал, надо ведь и нам учится у кого-то...

  2. #61
    С любовью к вам, Yandex.Direct
    Размещение рекламы на форуме способствует его дальнейшему развитию

  3. #62
    Banned
    Регистрация
    22.05.2011
    Адрес
    г. Дзержинск, Украина
    Сообщений
    6,841
    Спасибо Благодарностей отдано 
    483
    Спасибо Благодарностей получено 
    658
    Поблагодарили
    512 сообщений
    Mentioned
    10 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Кстате стрельбу(и свою и врагов) можно сделать пусканием одиночного луча, того же, что и для сканирования

  4. #63
    Banned
    Регистрация
    22.05.2011
    Адрес
    г. Дзержинск, Украина
    Сообщений
    6,841
    Спасибо Благодарностей отдано 
    483
    Спасибо Благодарностей получено 
    658
    Поблагодарили
    512 сообщений
    Mentioned
    10 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от krt17 Посмотреть сообщение
    Задача по теме, нужно из вертикального экрана нарисовать обычный (атрибутами). Веритикальный значит хранится столбцами, так как в столбцах рисовать придется не раз, с наложением. У меня пока так:
    Код:
        ld d,(hl)
        sub c
        ld l,a
        ld e,(hl)
        sub c
        ld l,a
        push de
    Чую некую неоптимальность казалось бы простой задачи. Рисовать по вертикали тоже не вариант, луч не дремлет. Может у кого какие идеи?
    По ходу самым оптимальным будет
    запилить развернутую процедуру переброски всех столбцов
    Код:
    ld a,(nnnn)    ;13
    ld (nnnn),a    ;13
    ...
            ;26\1b   6b
    
        ;итого 19968t на переброску
        ;4608 байт на процедуру переброски
    
    или
    
    pop de		;10
    add hl,bc	;11
    ld (hl),d	;7
    add hl,bc	;11
    ld (hl),e	;7
    ...
    		;46\2b	5b
    	;итого >17664t на переброску
    	;>1920 байт на процедуру переброски
    
    или
    
    pop hl        ;10
    ld a,l        ;4
    ld (nnnn),a   ;13
    ld a,h        ;4
    ld (nnnn),a   ;13
    ...
            ;44\2b   9b
        ;итого >16896t на переброску
        ;>3456 байт на процедуру переброски
    хотя уже и не актуально...
    Последний раз редактировалось NEO SPECTRUMAN; 09.07.2016 в 20:00.

  5. #64
    Veteran Аватар для Destr
    Регистрация
    26.03.2008
    Адрес
    Питкяранта
    Сообщений
    1,802
    Спасибо Благодарностей отдано 
    249
    Спасибо Благодарностей получено 
    114
    Поблагодарили
    88 сообщений
    Mentioned
    1 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от NEO SPECTRUMAN Посмотреть сообщение
    хотя уже и не актуально...
    Любая инфа по практике актуальна, спасибо!

  6. #65
    Banned
    Регистрация
    22.05.2011
    Адрес
    г. Дзержинск, Украина
    Сообщений
    6,841
    Спасибо Благодарностей отдано 
    483
    Спасибо Благодарностей получено 
    658
    Поблагодарили
    512 сообщений
    Mentioned
    10 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от Destr Посмотреть сообщение
    Любая инфа по практике актуальна
    на практике как оказалось промах луча не редкость
    луч пробивает и 2 стенки(с тольщиной 1 пиксель) под разными углами
    иногда даже 3

    так что никакие щели не допускаются

  7. #66
    Veteran Аватар для Destr
    Регистрация
    26.03.2008
    Адрес
    Питкяранта
    Сообщений
    1,802
    Спасибо Благодарностей отдано 
    249
    Спасибо Благодарностей получено 
    114
    Поблагодарили
    88 сообщений
    Mentioned
    1 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от NEO SPECTRUMAN Посмотреть сообщение
    на практике как оказалось промах луча не редкость
    луч пробивает и 2 стенки(с тольщиной 1 пиксель) под разными углами
    иногда даже 3
    Чертёж не верен твой, ведь обсчёт идет по клеткам (ну типа как у тебя, синии - есть, пустые = нету препятствия).
    А у тебя нарисовано пограничный счёт.
    В общем линия (луч) кидается исходя из соображений (математическая абстракция) что координаты внутри клетки ТЕ-ЖЕ САМЫЕ ЧТО И В ИСХОДНОЙ.
    В общем поразмысли, если не догоняешь сам я тебе нарисую чертёжик (или гуру опередят и подскажут где ты ошибся).

    В общем принимай работу алгоритма брезенхема так, что твоя зелёная точка на каждой итерации очутится в ТОЙ-ЖЕ клеточной (внутренней) координате что была в исходной.
    И так до достижения успеха (исчерпана длина луча, либо приехали в оконечную координату линии)

  8. #67
    Master
    Регистрация
    31.01.2007
    Адрес
    Москва
    Сообщений
    715
    Спасибо Благодарностей отдано 
    7
    Спасибо Благодарностей получено 
    43
    Поблагодарили
    32 сообщений
    Mentioned
    7 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от NEO SPECTRUMAN Посмотреть сообщение
    хотя уже и не актуально...
    Вы тут че укуренные? Мой вариант 41/2, мне взамен предлагаете 3 более тормозных еще и с разворотом, еще и под луч подставлять.
    Хотя уже и правда не актуально, все значительно эволюционировало.

  9. #68
    Banned
    Регистрация
    22.05.2011
    Адрес
    г. Дзержинск, Украина
    Сообщений
    6,841
    Спасибо Благодарностей отдано 
    483
    Спасибо Благодарностей получено 
    658
    Поблагодарили
    512 сообщений
    Mentioned
    10 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от krt17 Посмотреть сообщение
    Вы тут че укуренные?
    До.
    твой снапшот еще не дебагал...

    41/2
    закинь сюда посмотреть

    Цитата Сообщение от Destr Посмотреть сообщение
    Чертёж не верен твой, ведь обсчёт идет по клеткам
    чертеж не мой
    проблема актуальна для многих вариантов реализации

    да и такая реализация как на рисунки проще некуда
    одна 16 битная таблица синуса и все
    никаких линий и 20 процедур для каждой стороны света
    медленно и сердито небольшие расходы на память

    и полученное растояние(количество шагов) готово к использованию
    нужно только коррекцию искажению камеры и все.
    а если двигаться по каждой клеточке (как стена) то расстояние уже будет получено левое
    Последний раз редактировалось NEO SPECTRUMAN; 10.07.2016 в 23:40.

  10. #69
    Veteran Аватар для Destr
    Регистрация
    26.03.2008
    Адрес
    Питкяранта
    Сообщений
    1,802
    Спасибо Благодарностей отдано 
    249
    Спасибо Благодарностей получено 
    114
    Поблагодарили
    88 сообщений
    Mentioned
    1 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    А кто-нибудь в курсе как на этой LUA сделать SELECT-CASE ?

  11. #70
    Master Аватар для elf/2
    Регистрация
    14.01.2005
    Адрес
    N.Novgorod
    Сообщений
    803
    Спасибо Благодарностей отдано 
    0
    Спасибо Благодарностей получено 
    1
    Поблагодарили
    1 сообщение
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от Destr Посмотреть сообщение
    А кто-нибудь в курсе как на этой LUA сделать SELECT-CASE ?
    вот тут штук 10 вариантов
    http://lua-users.org/wiki/SwitchStatement

Страница 7 из 10 ПерваяПервая ... 345678910 ПоследняяПоследняя

Информация о теме

Пользователи, просматривающие эту тему

Эту тему просматривают: 1 (пользователей: 0 , гостей: 1)

Похожие темы

  1. Ответов: 7
    Последнее: 03.11.2015, 18:22
  2. Ответов: 10
    Последнее: 06.07.2012, 15:02
  3. МЕТКИ:sjasm+Unreal
    от breeze в разделе Программирование
    Ответов: 10
    Последнее: 06.07.2011, 08:39
  4. Попиксельный скролл на Асме
    от helcril в разделе Для начинающих
    Ответов: 8
    Последнее: 17.12.2009, 09:31
  5. sjasm - первые глюки
    от breeze в разделе Программирование
    Ответов: 9
    Последнее: 24.03.2005, 10:51

Ваши права

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