Working Notes - SteamLUG/steamlug-7dfps-2014 GitHub Wiki
- Shadow casting seems not to be working very well for spotlights https://github.com/okamstudio/godot/wiki/tutorial_shadow_mapping
- Raycasts should be tested when we have a (somehow) real scenario.
- We can change raycasts' orientation and position according to our needs.
- To add more raycasts, just do it on the player.xscn scene. Then change the lantern script to add them in _ready() with append_rc() function.
The ghost will have a shader that changes rendering for it, depending on light influence, like distance or number of raycasts hit. If no light affects, the ghost will be invisible for players.
Relevant docs:
- https://github.com/okamstudio/godot/wiki/tutorial_materials
- https://github.com/okamstudio/godot/wiki/tutorial_fixed_materials
- https://github.com/okamstudio/godot/wiki/tutorial_shader_materials
- https://github.com/okamstudio/godot/wiki/shader
(assigned to raz)
Relevant docs:
- https://github.com/okamstudio/godot/wiki/tutorial_viewports
- https://github.com/okamstudio/godot/wiki/tutorial_multires
- https://github.com/okamstudio/godot/wiki/tutorial_canvas_layers
- Check 2D in 3D demo.
(assigned to raz)
Maybe use peer in server to receive sync data (ie. positions) from client peers, so an initial approach for server on each frame could be something like this:
- Foreach peer, receive all sync data needed and push that data to a buffer
- Broadcast that buffer to all peer clients
On client side, it could be something in the mood of:
- Send my sync data to the server
- Receive all sync data from all entities, now we have two options
- Render entities from received sync data
Some questions arise
- Will movement be computed on each client?
- Will colision be computed on each client?
- Will players collide between them?
- Will players collide with the monster?
- Start listening for incoming connections (listen)
- Stop listening whenever you want (stop)
- Accepts connections and returns StreamPeerTCP on taking a connection (is_connection_available, take_connection)
- Connects to a server (connect)
- Sends and receive data across the network ([put|get](partial)?data from StreamPeer inheritance)