AeThex-Engine-Core/docs/WELCOME_SCREEN_PLAN.md
2026-02-23 04:47:38 +00:00

232 lines
6 KiB
Markdown

# 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 manager
- `engine/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:
```cpp
// 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
```cpp
// In ProjectManager class
Control *welcome_panel = nullptr;
void _create_welcome_panel() {
welcome_panel = memnew(PanelContainer);
// Add logo, text, buttons
}
```
### Step 2: Add Quick Links
```cpp
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
```cpp
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`
```cpp
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):**
1. ✅ Window title and branding (Done via version.py)
2. Custom welcome message
3. AeThex-styled buttons and panels
4. Quick link buttons
**Medium Priority (Do Soon):**
1. Template project system
2. Getting started tutorial
3. News/updates panel
4. Enhanced recent projects view
**Low Priority (Do Later):**
1. Cloud integration UI
2. AI assistant interface
3. Analytics dashboard
4. 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.