New initializes the RenderSystem
(w *ecs.World)
| 218 | |
| 219 | // New initializes the RenderSystem |
| 220 | func (rs *RenderSystem) New(w *ecs.World) { |
| 221 | rs.world = w |
| 222 | rs.ids = make(map[uint64]struct{}) |
| 223 | |
| 224 | engo.Mailbox.Listen("NewCameraMessage", func(engo.Message) { |
| 225 | rs.newCamera = true |
| 226 | }) |
| 227 | |
| 228 | addCameraSystemOnce(w) |
| 229 | |
| 230 | if !engo.Headless() { |
| 231 | if err := initShaders(w); err != nil { |
| 232 | panic(err) |
| 233 | } |
| 234 | engo.Gl.Enable(engo.Gl.MULTISAMPLE) |
| 235 | } |
| 236 | |
| 237 | engo.Mailbox.Listen("renderChangeMessage", func(engo.Message) { |
| 238 | rs.sortingNeeded = true |
| 239 | }) |
| 240 | } |
| 241 | |
| 242 | var cameraInitMutex sync.Mutex |
| 243 |
nothing calls this directly
no test coverage detected