shaders.go 809 B

12345678910111213141516171819202122232425262728293031323334353637383940414243444546
  1. // Copyright 2016 The G3N Authors. All rights reserved.
  2. // Use of this source code is governed by a BSD-style
  3. // license that can be found in the LICENSE file.
  4. package shader
  5. import ()
  6. type ProgramInfo struct {
  7. Vertex string // Vertex shader name
  8. Frag string // Fragment shader name
  9. }
  10. var chunks = map[string]string{}
  11. var shaders = map[string]string{}
  12. var programs = map[string]ProgramInfo{}
  13. func Chunks() map[string]string {
  14. return chunks
  15. }
  16. func Shaders() map[string]string {
  17. return shaders
  18. }
  19. func Programs() map[string]ProgramInfo {
  20. return programs
  21. }
  22. func AddChunk(name, source string) {
  23. chunks[name] = source
  24. }
  25. func AddShader(name, source string) {
  26. shaders[name] = source
  27. }
  28. func AddProgram(name, vertexName, fragName string) {
  29. programs[name] = ProgramInfo{vertexName, fragName}
  30. }