티스토리 뷰
맥북에는 전에 테스트 한 테스트 명령어가 남아있겠지?
SPIRV-Cross
https://github.com/KhronosGroup/SPIRV-Cross
HLSL source to GLSL
위 섹션에서는, 기본은 OpenGL 4.3 때 GLSL을 기준으로 할꺼니까 별 상관은 없지만,
(애초에 MS에서 변환기 제공하지 않나? github에 있는 그거)
몇개 참조 할 만한듯, 주의사항 첫번째
Some platform may require identical variable name for both vertex outputs and fragment inputs. (for example MacOSX) to rename varaible base on location, please add...
Mordern to legacy GLSL
Modern GLES code like this: ''' struct Output { vec4 a; vec2 b; }; out Output vout; '''
Is transformed into:
''' struct Output { vec4 a; vec2 b; }; varying vec4 Output_a; varying vec2 Output_b; '''
별다른 API는 안보인다
Separate image samplers (HLSL/Vulkan) for backends which do not support it (GLSL)
Another thing you need to remember is when using samplers and textures in HLSL these are separable, and not directly compatible with GLSL.
GLSL 에서 그랬나? sampler 안쓰니 잘 기억안나네
The command line client calls Compiler::build_combined_image_samplers automatically
Linking by name for targets which do not support explicit locations (legacy GLSL/ESSL)
답이없다. 사용안하면 순서 무시하고 없애기에, 엄청 머리써서 파싱하던가
간단한 래퍼용 쉐이딩 랭귀지 써서 극복하던가
Compiler::set_name and friends.
optimize 와 여러개를 감싼 프로젝트인데
https://github.com/septag/glslcc
문제는, input 순서를 바꿔버린다; 왜?
shader optimizer
montel에서 사용한,
- Total
- Today
- Yesterday