3D Plane Cave Racer
Prompt
Create a 3D plane racing game using HTML, JavaScript, and CSS, where the player pilots a plane through a procedurally generated cave with random corners. The plane must be controllable in all three spatial dimensions (X, Y, and Z) with smooth movement. The cave environment should be generated procedurally to produce an unpredictable, winding path with walls that display visible damage effects on collision. The player starts with three lives; colliding with cave walls reduces lives and shows damage. The race is designed to be long, testing endurance and skill. The game should be rendered from a third-person perspective, with the camera positioned behind the plane, tracking its movement. Use colors, shading, and styling to give realistic graphics and an immersive visual experience. You may use Three.js or similar open-source 3D libraries to facilitate rendering and controls. # Detailed Instructions - Setup an HTML structure including a canvas or container for rendering 3D content. - Use JavaScript (and Three.js if preferred) to: - Procedurally generate the cave geometry with random bends and walls. - Implement 3D movement controls allowing the plane to maneuver freely. - Detect collisions between the plane and cave walls. - Display damage effects on cave walls at collision points. - Manage player lives (starting at three), decrementing on collisions and ending the game when lives reach zero. - Track progression through the cave as a long-distance race. - Attach a third-person camera that smoothly follows the plane from behind. - Apply CSS to style the page and enhance visual realism through color schemes and possibly post-processing effects. - Ensure the game runs smoothly and responsively in modern browsers. # Output Format Provide a complete, commented HTML file including embedded or linked CSS and JavaScript that fully implements the described game. Use clear code comments explaining key functions, logic, and structure to aid maintenance and understanding. # Notes - Prioritize clear, maintainable code and smooth gameplay experience. - The procedural cave should have visible variation and randomness to keep gameplay engaging. - Damage effects can be visual cues like cracks, discoloration, or mesh deformation on walls. - Controller input (keyboard/mouse or touch) should allow intuitive 3D plane navigation.
Related Coding Prompts
Write Code
As a seasoned programmer, your task is to write code in [programming language] to [perform action]. The code should be efficient, well-structured, and optimized for performance. Make sure to follow best practices and industry standards while implementing the necessary algorithms and logic to achieve the desired functionality. Test the code thoroughly to ensure it functions as intended and meets all requirements. Additionally, document the code properly for future reference and maintenance.
Debug Code
Act as a seasoned programmer with over 20 years of commercial experience. Analyze the provided [piece of code] that is causing a specific [error]. Your task involves diagnosing the root cause of the error, understanding the context and functionality intended by the code, and proposing a solution to fix the issue. Your analysis should include a step-by-step walkthrough of the code, identification of any bugs or logical mistakes, and a detailed explanation of how to resolve them. Additionally, suggest any improvements or optimizations to enhance the performance, readability, or maintainability of the code based on your extensive experience. Ensure that your solution adheres to best practices in software development and is compatible with the current development environment where the code is being executed.
Do Code Review
As a seasoned programmer with over 20 years of commercial experience, your task is to perform a comprehensive code review on the provided [piece of code]. Your review should meticulously evaluate the code's efficiency, readability, and maintainability. You are expected to identify any potential bugs, security vulnerabilities, or performance issues and suggest specific improvements or optimizations. Additionally, assess the code's adherence to industry standards and best practices. Your feedback should be constructive and detailed, offering clear explanations and recommendations for changes. Where applicable, provide examples or references to support your suggestions. Your goal is to ensure that the code not only functions as intended but also meets high standards of quality and can be easily managed and scaled in the future. This review is an opportunity to mentor and guide less experienced developers, so your insights should be both educational and actionable.