6 KiB
6 KiB
Custom Welcome Screen Implementation Plan
Overview
The AeThex Engine welcome screen will provide a modern, branded onboarding experience that highlights AeThex's unique features and helps users get started quickly.
Files to Modify
Primary Files:
engine/editor/project_manager/project_manager.cpp- Main project managerengine/editor/project_manager/project_manager.h- Header file
customization Points:
1. Branding Elements
Window Title (Already Done via version.py)
The project manager will now show "AeThex Engine - Project Manager"
Welcome Panel
Location: Create new panel in project_manager.cpp
Content:
┌─────────────────────────────────────────┐
│ [AeThex Logo] AeThex Engine │
│ │
│ Next-Generation Game Engine │
│ • AI-Powered Development │
│ • Cloud-First Architecture │
│ • Modern Developer Tools │
│ │
│ [New Project] [Open Project] │
│ [Import Project] │
│ │
│ Quick Start: │
│ • First Game Tutorial → │
│ • Documentation → │
│ • Sample Projects → │
└─────────────────────────────────────────┘
2. Custom Features Panel
Getting Started Section
- Interactive tutorial launcher
- Video tutorials embedded/linked
- Sample project templates
- Community showcases
What's New Section
- Latest AeThex features
- Update notifications
- Blog/news feed integration
Resource Links
- Documentation (searchable)
- Discord Community
- Asset Marketplace (future)
- GitHub Repository
3. Visual Customizations
Color Theme
Apply AeThex cyan/purple gradient:
// In _update_theme()
Color aethex_primary = Color(0.0, 0.851, 1.0); // #00D9FF
Color aethex_secondary = Color(0.545, 0.361, 0.965); // #8B5CF6
Color aethex_dark = Color(0.118, 0.118, 0.180); // #1E1E2E
Custom Panels
- Rounded corners with glow effect
- Gradient backgrounds
- Smooth animations
- Modern card-based layout
4. Implementation Steps
Step 1: Add Welcome Panel Widget
// In ProjectManager class
Control *welcome_panel = nullptr;
void _create_welcome_panel() {
welcome_panel = memnew(PanelContainer);
// Add logo, text, buttons
}
Step 2: Add Quick Links
LinkButton *docs_link = memnew(LinkButton);
docs_link->set_text("Documentation");
docs_link->connect("pressed", callable_mp(this, &ProjectManager::_open_docs));
Step 3: Add Template Selector
OptionButton *template_selector = memnew(OptionButton);
template_selector->add_item("2D Platformer Starter");
template_selector->add_item("3D First-Person Template");
template_selector->add_item("UI/Menu Template");
// etc.
Step 4: Recent Projects Enhancement
- Add project screenshots/thumbnails
- Show project stats (last modified, file size)
- Quick actions (Run, Edit, Remove)
- Tag system for organization
5. Advanced Features (Future)
Cloud Integration
- Sign in with AeThex account
- Sync projects across devices
- Cloud-based collaboration
- Remote project management
AI Assistant Welcome
- "What would you like to create today?"
- AI-powered project setup
- Smart template recommendation
- Code generation quick start
Analytics & Insights
- Usage statistics (optional opt-in)
- Performance recommendations
- Community trends
- Popular assets/tools
6. Code Structure
New File: engine/editor/project_manager/aethex_welcome_panel.h
class AeThexWelcomePanel : public PanelContainer {
GDCLASS(AeThexWelcomePanel, PanelContainer);
private:
VBoxContainer *main_container;
TextureRect *logo_display;
RichTextLabel *welcome_text;
HBoxContainer *quick_actions;
void _on_new_project();
void _on_quick_tutorial();
void _on_open_docs();
protected:
static void _bind_methods();
public:
void update_theme();
AeThexWelcomePanel();
};
New File: engine/editor/project_manager/aethex_welcome_panel.cpp
Implementation of the welcome panel with all AeThex branding and quick actions.
7. Testing Checklist
- Logo displays correctly
- All links open correctly
- Theme matches AeThex colors
- Buttons are responsive
- Keyboard navigation works
- Scales properly on different resolutions
- Translations work (TTR macros)
- Animation performance is smooth
8. Future Enhancements
Phase 1 (Month 1-2)
- Basic branding and layout
- Quick links functional
- Custom color theme
Phase 2 (Month 3-4)
- Template system
- Interactive tutorials
- Project thumbnails
Phase 3 (Month 5-6)
- Cloud integration
- AI assistant preview
- Analytics dashboard
Phase 4 (Month 6+)
- Full feature parity with vision
- Community showcase
- Marketplace integration
Implementation Priority
High Priority (Do First):
- ✅ Window title and branding (Done via version.py)
- Custom welcome message
- AeThex-styled buttons and panels
- Quick link buttons
Medium Priority (Do Soon):
- Template project system
- Getting started tutorial
- News/updates panel
- Enhanced recent projects view
Low Priority (Do Later):
- Cloud integration UI
- AI assistant interface
- Analytics dashboard
- Community features
Current Status
Completed:
- Engine name branding
- Logo files
- Color scheme defined
Next Steps:
- Create
aethex_welcome_panel.h/cpp - Integrate into
project_manager.cpp - Add custom styling
- Test and refine
Note: The welcome screen is a complex UI component. Start with simple text/button customizations, then gradually add more sophisticated features as the project matures.