Size: a a a

pro.graphon (and gamedev)

2020 November 21

U

UsernameAK in pro.graphon (and gamedev)
disba1ancer
если бы там каждый объект имел счётчик ссылок и при достижении нуля объект сразу бы удалялся, без запуска GC, было бы гуд
я про тот факт, что там копирующий GC
источник

U

UsernameAK in pro.graphon (and gamedev)
Vlad Doc
Всего то надо дать возможность выделить память минуя гц. И в жаве деструкторов то нет.
такая возможность есть
(конечно же, не в стд)
источник

d

disba1ancer in pro.graphon (and gamedev)
UsernameAK
я про тот факт, что там копирующий GC
что он там копирует?
источник

U

UsernameAK in pro.graphon (and gamedev)
disba1ancer
что он там копирует?
регионы
источник

d

disba1ancer in pro.graphon (and gamedev)
UsernameAK
регионы
из того что я знаю там GC просто может перемещать классы в памяти, не ломая существующие ссылки
источник

U

UsernameAK in pro.graphon (and gamedev)
в джаве несколько GC
источник

U

UsernameAK in pro.graphon (and gamedev)
самый распространённый нынче G1, он копирующий
источник

d

disba1ancer in pro.graphon (and gamedev)
UsernameAK
в джаве несколько GC
емнип почти все так могут
источник

U

UsernameAK in pro.graphon (and gamedev)
UsernameAK
самый распространённый нынче G1, он копирующий
то есть он переносит в другой регион живые объекты, а не free()ит мертвые
источник

d

disba1ancer in pro.graphon (and gamedev)
UsernameAK
то есть он переносит в другой регион живые объекты, а не free()ит мертвые
кароче им нужен концептуально новый GC работающий на манер автоматической памяти как в плюсцах
источник

d

disba1ancer in pro.graphon (and gamedev)
Vlad Doc
Всего то надо дать возможность выделить память минуя гц. И в жаве деструкторов то нет.
из-за отсутствия деструкторов там давно как раз ввели какой-то костыль
источник

U

UsernameAK in pro.graphon (and gamedev)
disba1ancer
из-за отсутствия деструкторов там давно как раз ввели какой-то костыль
источник

U

UsernameAK in pro.graphon (and gamedev)
точнее ввели его даже раньше, но до этого это было внутреннее private api
источник

DM

Denis Moklyakov in pro.graphon (and gamedev)
Надеюсь, не нарушаю правила, задавая следующий вопрос (команда /rules не сработала):

Мне требуется использовать floating-point двухканальную текстуру в OpenGL, но такого, насколько я понимаю, не предусмотрено.
Возможно ли использовать четырёхканальную текстуру (GL_RGBA16F) и писать/читать в/из неё, меняя каналы (например, сейчас читаю из rg и пишу в ba и при следующем выполнении шейдера наоборот)?

Или лучше сделать четыре одноканальных текстуры для этих целей?

P.S. я ограничен использованием OpenGL ES (пишу прогу под Android).
источник

TG

Timur Gagiev in pro.graphon (and gamedev)
Denis Moklyakov
Надеюсь, не нарушаю правила, задавая следующий вопрос (команда /rules не сработала):

Мне требуется использовать floating-point двухканальную текстуру в OpenGL, но такого, насколько я понимаю, не предусмотрено.
Возможно ли использовать четырёхканальную текстуру (GL_RGBA16F) и писать/читать в/из неё, меняя каналы (например, сейчас читаю из rg и пишу в ba и при следующем выполнении шейдера наоборот)?

Или лучше сделать четыре одноканальных текстуры для этих целей?

P.S. я ограничен использованием OpenGL ES (пишу прогу под Android).
GL_RG с форматом GL_FLOAT
источник

DM

Denis Moklyakov in pro.graphon (and gamedev)
Timur Gagiev
GL_RG с форматом GL_FLOAT
спасибо, попробую :)
источник

TG

Timur Gagiev in pro.graphon (and gamedev)
нельзя читать и писать в текстуру одновременно, если вопрос про это был
источник

TG

Timur Gagiev in pro.graphon (and gamedev)
Denis Moklyakov
спасибо, попробую :)
проверь наличие расширения, вполне вероятно, что может не поддерживаться на устройстве
источник

DM

Denis Moklyakov in pro.graphon (and gamedev)
Timur Gagiev
нельзя читать и писать в текстуру одновременно, если вопрос про это был
Насколько я понял, результат одновременной чтения/записи не детерменирован, а в теории мне ничто не запрещает так делать. Поэтому хотел немного сэкономить ресурсы, сделав одну текстуру, но не рисуя одновременно в ту пару каналов, из которых читаю, для того, чтобы не было мусора в результате.
источник

d

disba1ancer in pro.graphon (and gamedev)
Denis Moklyakov
Надеюсь, не нарушаю правила, задавая следующий вопрос (команда /rules не сработала):

Мне требуется использовать floating-point двухканальную текстуру в OpenGL, но такого, насколько я понимаю, не предусмотрено.
Возможно ли использовать четырёхканальную текстуру (GL_RGBA16F) и писать/читать в/из неё, меняя каналы (например, сейчас читаю из rg и пишу в ba и при следующем выполнении шейдера наоборот)?

Или лучше сделать четыре одноканальных текстуры для этих целей?

P.S. я ограничен использованием OpenGL ES (пишу прогу под Android).
для команды /rules нужен включённый бот в личке
источник