GLM 1.0.0 - ์ˆ˜ํ•™ C++ ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ

GLM 1.0.0 - ์ˆ˜ํ•™ C++ ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ

๊ฑฐ์˜ 24๋…„์˜ ๊ณต๋ฐฑ ๋์— 1.0.0์›” XNUMX์ผ, C++์šฉ ํ—ค๋” ์ „์šฉ SIMD ์ตœ์ ํ™” ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ XNUMX์ด ์ถœ์‹œ๋˜์—ˆ์Šต๋‹ˆ๋‹ค. GLM (OpenGL ์ˆ˜ํ•™) ์‚ฌ์–‘ ๊ธฐ๋ฐ˜ GLSL(PDF) (OpenGL ์…ฐ์ด๋”ฉ ์–ธ์–ด).

๋ณ€๊ฒฝ ์‚ฌํ•ญ :

  • ํ…Œ์ŠคํŠธ์™€ ํ•จ๊ป˜ GLM_EXT_scalar_reciprocal ๋ชจ๋“ˆ์„ ์ถ”๊ฐ€ํ–ˆ์Šต๋‹ˆ๋‹ค.
  • ํ…Œ์ŠคํŠธ์™€ ํ•จ๊ป˜ GLM_EXT_Vector_reciprocal ๋ชจ๋“ˆ์„ ์ถ”๊ฐ€ํ–ˆ์Šต๋‹ˆ๋‹ค.
  • ํ…Œ์ŠคํŠธ์™€ ํ•จ๊ป˜ GLM_EXT_matrix_integer ๋ชจ๋“ˆ์„ ์ถ”๊ฐ€ํ–ˆ์Šต๋‹ˆ๋‹ค.
  • GLM_EXT_scalar_common ๋ฐ GLM_EXT_Vector_common ๋ชจ๋“ˆ์— glm::iround ๋ฐ glm::around ํ•จ์ˆ˜๋ฅผ ์ถ”๊ฐ€ํ–ˆ์Šต๋‹ˆ๋‹ค.
  • float ์œ ํ˜•์„ ๊ธฐ๋Œ€ํ•˜๋Š” ํ•จ์ˆ˜์™€ ํ•จ๊ป˜ ๋‹ค๋ฅธ ์Šค์นผ๋ผ ์œ ํ˜•์„ ์‚ฌ์šฉํ•  ๋•Œ ์ •์  ์–ด์„ค์…˜์„ ๋ฐฉ์ง€ํ•˜๊ธฐ ์œ„ํ•ด GLM_FORCE_UNRESTRICTED_FLOAT ํ•จ์ˆ˜๋ฅผ ์ถ”๊ฐ€ํ–ˆ์Šต๋‹ˆ๋‹ค.
  • ํฌ๋กœ์Šค ํ•จ์ˆ˜์™€ ๋„ํŠธ ํ•จ์ˆ˜์— constexpr ๋ถ„๋ฅ˜์ž๋ฅผ ์ถ”๊ฐ€ํ–ˆ์Šต๋‹ˆ๋‹ค.
  • glm::min ๋ฐ glm::max์— ๋Œ€ํ•œ ์ž˜๋ชป๋œ ๋ฌธ์„ ์ˆ˜์ •ํ–ˆ์Šต๋‹ˆ๋‹ค.
  • glm::decompose ํ•จ์ˆ˜์—์„œ ์ฟผํ„ฐ๋‹ˆ์–ธ์˜ ๊ณ ์ • ๋ฐฉํ–ฅ;
  • ์ฟผํ„ฐ๋‹ˆ์–ธ์„ ์˜ค์ผ๋Ÿฌ ๋กค ๊ฐ๋„๋กœ ๋ณ€ํ™˜ํ•  ๋•Œ ๊ณ ์ •๋œ ํŠน์ด์ ;
  • glm::pow ์ž‘์€ ์ฟผํ„ฐ๋‹ˆ์–ธ ์ž‘์—…์„ ์ˆ˜์ •ํ–ˆ์Šต๋‹ˆ๋‹ค.
  • glm::fastNormalize ์ปดํŒŒ์ผ ์˜ค๋ฅ˜๋ฅผ ์ˆ˜์ •ํ–ˆ์Šต๋‹ˆ๋‹ค.
  • glm::isMultiple ์ปดํŒŒ์ผ ์˜ค๋ฅ˜๊ฐ€ ์ˆ˜์ •๋˜์—ˆ์Šต๋‹ˆ๋‹ค.
  • glm::adjugate ํ•จ์ˆ˜์˜ ๊ณ ์ • ๊ณ„์‚ฐ;
  • (2pi-1, 2pi) ๋ฒ”์œ„์˜ ๊ฐ๋„์— ๋Œ€ํ•œ glm::angle ํ•จ์ˆ˜์˜ ๊ฒฐ๊ณผ ๊ธฐํ˜ธ ๊ฑฐ๋ถ€๋ฅผ ์ˆ˜์ •ํ–ˆ์Šต๋‹ˆ๋‹ค.
  • CUDA ํ˜ธ์ŠคํŠธ ์ฝ”๋“œ์—์„œ glm::string_cast ์‚ฌ์šฉ ๊ธˆ์ง€๋ฅผ ์ œ๊ฑฐํ–ˆ์Šต๋‹ˆ๋‹ค.
  • Github ์ž‘์—…์ด ์ถ”๊ฐ€๋˜์—ˆ์Šต๋‹ˆ๋‹ค.

์ถœ์ฒ˜ : linux.org.ru

์ฝ”๋ฉ˜ํŠธ๋ฅผ ์ถ”๊ฐ€