197 lines
4.6 KiB
Markdown
197 lines
4.6 KiB
Markdown
# Contributing to Dubai Metaverse
|
|
|
|
Thank you for your interest in contributing to the Dubai Metaverse project!
|
|
|
|
## Code of Conduct
|
|
|
|
- Be respectful and inclusive
|
|
- Provide constructive feedback
|
|
- Follow project standards and conventions
|
|
- Test your changes before submitting
|
|
|
|
## Getting Started
|
|
|
|
1. **Read the Documentation**:
|
|
- [README.md](README.md) - Project overview
|
|
- [docs/planning/PROJECT_CHARTER.md](docs/planning/PROJECT_CHARTER.md) - Project vision
|
|
- [docs/setup/GETTING_STARTED.md](docs/setup/GETTING_STARTED.md) - Setup guide
|
|
- [docs/NAMING_CONVENTIONS.md](docs/NAMING_CONVENTIONS.md) - Naming standards
|
|
- [docs/PIPELINE.md](docs/PIPELINE.md) - Development workflow
|
|
|
|
2. **Set Up Development Environment**:
|
|
- Install Unreal Engine 5.4 (see [docs/setup/UE5_INSTALLATION.md](docs/setup/UE5_INSTALLATION.md))
|
|
- Configure Git LFS (see [docs/setup/VERSION_CONTROL.md](docs/setup/VERSION_CONTROL.md))
|
|
- Review project settings (see [docs/setup/PROJECT_SETTINGS.md](docs/setup/PROJECT_SETTINGS.md))
|
|
|
|
## Contribution Guidelines
|
|
|
|
### Asset Contributions
|
|
|
|
#### Naming Conventions
|
|
- Follow [docs/NAMING_CONVENTIONS.md](docs/NAMING_CONVENTIONS.md)
|
|
- Use consistent prefixes and suffixes
|
|
- Organize assets in proper folder structure
|
|
|
|
#### Asset Quality
|
|
- Meet performance targets (see [PERFORMANCE_TARGETS.md](PERFORMANCE_TARGETS.md))
|
|
- Follow art style guide (see [docs/ART_BIBLE.md](docs/ART_BIBLE.md))
|
|
- Include proper LODs for non-Nanite assets
|
|
|
|
#### Asset Validation
|
|
- Run validation scripts before committing
|
|
- Check asset naming and structure
|
|
- Verify performance impact
|
|
|
|
### Code Contributions
|
|
|
|
#### Code Style
|
|
- Follow Unreal Engine coding standards
|
|
- Use consistent formatting
|
|
- Add comments for complex logic
|
|
- Document public APIs
|
|
|
|
#### Scripts
|
|
- Follow script standards (see [scripts/STANDARDS.md](scripts/STANDARDS.md))
|
|
- Include error handling
|
|
- Add usage documentation
|
|
- Test scripts before committing
|
|
|
|
### Documentation Contributions
|
|
|
|
#### Documentation Standards
|
|
- Follow documentation template
|
|
- Include table of contents
|
|
- Add prerequisites section
|
|
- Include troubleshooting section
|
|
- Cross-reference related docs
|
|
|
|
#### Updating Documentation
|
|
- Update last modified date
|
|
- Add to documentation index
|
|
- Verify all links work
|
|
- Test all code examples
|
|
|
|
## Development Workflow
|
|
|
|
### 1. Create Feature Branch
|
|
|
|
```bash
|
|
git checkout -b feature/your-feature-name
|
|
# or
|
|
git checkout -b fix/your-bug-fix
|
|
```
|
|
|
|
### 2. Make Changes
|
|
|
|
- Follow project standards
|
|
- Test your changes
|
|
- Update documentation if needed
|
|
- Run validation scripts
|
|
|
|
### 3. Commit Changes
|
|
|
|
```bash
|
|
git add .
|
|
git commit -m "Description of changes"
|
|
```
|
|
|
|
**Commit Message Format**:
|
|
- Use clear, descriptive messages
|
|
- Reference issue numbers if applicable
|
|
- Follow conventional commits format:
|
|
- `feat: Add new feature`
|
|
- `fix: Fix bug description`
|
|
- `docs: Update documentation`
|
|
- `refactor: Refactor code`
|
|
- `test: Add tests`
|
|
|
|
### 4. Push and Create Pull Request
|
|
|
|
```bash
|
|
git push origin feature/your-feature-name
|
|
```
|
|
|
|
Then create a pull request with:
|
|
- Clear description of changes
|
|
- Screenshots/videos if applicable
|
|
- Reference to related issues
|
|
- Testing notes
|
|
|
|
## Pull Request Process
|
|
|
|
### Before Submitting
|
|
|
|
- [ ] Code follows project standards
|
|
- [ ] All tests pass
|
|
- [ ] Documentation updated
|
|
- [ ] No merge conflicts
|
|
- [ ] Validation scripts pass
|
|
- [ ] Performance impact assessed
|
|
|
|
### Pull Request Template
|
|
|
|
```markdown
|
|
## Description
|
|
Brief description of changes
|
|
|
|
## Type of Change
|
|
- [ ] Bug fix
|
|
- [ ] New feature
|
|
- [ ] Documentation update
|
|
- [ ] Performance improvement
|
|
- [ ] Refactoring
|
|
|
|
## Testing
|
|
Describe how you tested your changes
|
|
|
|
## Screenshots/Videos
|
|
If applicable, add screenshots or videos
|
|
|
|
## Related Issues
|
|
Closes #issue-number
|
|
```
|
|
|
|
## Review Process
|
|
|
|
1. **Automated Checks**: CI/CD will run validation
|
|
2. **Code Review**: Team members will review
|
|
3. **Testing**: Changes will be tested
|
|
4. **Approval**: Requires at least one approval
|
|
5. **Merge**: Changes merged to main branch
|
|
|
|
## Reporting Issues
|
|
|
|
### Bug Reports
|
|
|
|
Include:
|
|
- Description of the bug
|
|
- Steps to reproduce
|
|
- Expected behavior
|
|
- Actual behavior
|
|
- System information
|
|
- Screenshots/videos if applicable
|
|
|
|
### Feature Requests
|
|
|
|
Include:
|
|
- Description of the feature
|
|
- Use case
|
|
- Proposed implementation (if any)
|
|
- Related issues
|
|
|
|
## Questions?
|
|
|
|
- Check [documentation](docs/README.md)
|
|
- Review [FAQ](docs/troubleshooting/FAQ.md) (if available)
|
|
- Open an issue for discussion
|
|
- Contact project maintainers
|
|
|
|
## License
|
|
|
|
By contributing, you agree that your contributions will be licensed under the same license as the project (see [LICENSE](LICENSE.md)).
|
|
|
|
---
|
|
|
|
**Thank you for contributing to Dubai Metaverse!**
|
|
|