godotengine / godot

Godot Engine – Multi-platform 2D and 3D game engine
https://godotengine.org
MIT License
88.68k stars 20.11k forks source link

[3D Mode] Viewmodel/Viewhud Layering #6205

Closed Corruptinator closed 4 years ago

Corruptinator commented 8 years ago

Operating system or device - Godot version: Godot Version 3.0 - All operating system versions

Issue description (what happened, and what was expected):

(Note: This is inspired by looking into older FPS games and analyzing how "viewmodels" work.)

First of all, viewmodels are objects placed in a separate viewing space that doesn't exist or interact with the world the player/avatar is located, while still recieving light and shadow information without sacrifice.

Second, I've been taking a good look at some examples of First Person Shooter/First Person scenarios using the Godot Engine, and what I have noticed is that objects are rendered in front but within the camera while both are within a 3D hitbox or physical collision body to prevent objects from clipping/phasing through objects. Is there a way to add a function to the 3D Camera Node to create an array of separate 3D viewing layers to import and place the 3D objects within? Without sacrificing light and shadow detail?

This may have been an advanced suggestion to ask as a feature, but it would be useful for creating 3D Heads Up Display GUI in one 3d viewing layer and the arms/limbs holding a weapon or object in another separate layer. Hope this explanation wasn't too confusing to understand.

bojidar-bg commented 7 years ago

I guess that might be revised for 3.0, but, I must admit that I can hardly grasp the idea... :smiley:

akien-mga commented 4 years ago

Feature and improvement proposals for the Godot Engine are now being discussed and reviewed in a dedicated Godot Improvement Proposals (GIP) (godotengine/godot-proposals) issue tracker. The GIP tracker has a detailed issue template designed so that proposals include all the relevant information to start a productive discussion and help the community assess the validity of the proposal for the engine.

The main (godotengine/godot) tracker is now solely dedicated to bug reports and Pull Requests, enabling contributors to have a better focus on bug fixing work. Therefore, we are now closing all older feature proposals on the main issue tracker.

If you are interested in this feature proposal, please open a new proposal on the GIP tracker following the given issue template (after checking that it doesn't exist already). Be sure to reference this closed issue if it includes any relevant discussion (which you are also encouraged to summarize in the new proposal). Thanks in advance!