38 lines
1.6 KiB
Markdown
38 lines
1.6 KiB
Markdown
# Maya Image Plane Node Project Plan
|
|
|
|
## Team Structure
|
|
- Team Lead: Architect (you)
|
|
- Developer 1: FFmpeg and Maya Node
|
|
- Developer 2: Viewport 2.0 and Post-effects
|
|
- QA Engineer: Test plans and test cases
|
|
|
|
## Project Structure
|
|
src/
|
|
MayaImagePlaneNode/
|
|
CMakeLists.txt
|
|
src/
|
|
*.cpp, *.h
|
|
include/
|
|
*.h
|
|
resources/
|
|
(optional)
|
|
|
|
## Tasks
|
|
1. Project setup: Create directory structure, CMakeLists.txt, and find ffmpeg
|
|
2. FFmpeg integration: Build ffmpeg or link against pre-built libraries, implement video decoding
|
|
3. Maya node implementation: Create MPxNode plugin that handles video file input and frame output
|
|
4. Viewport 2.0 integration: Implement MHWRender::MPxDrawOverride to display video frames in viewport
|
|
5. Frame rate synchronization: Read Maya's frame rate and adjust playback speed accordingly
|
|
6. User-adjustable playback rate: Add attribute to control video playback speed independently
|
|
7. Post-effects: Implement crop, resize, flip operations on video frames
|
|
8. Video frame caching: Cache decoded frames for smooth playback
|
|
9. Module packaging: Create Maya module structure for easy installation
|
|
10. QA: Write test plans and test cases for plugin loading and functionality
|
|
11. QA: Test plugin loading using mayapy.exe
|
|
12. QA: Test viewport display using maya.exe and MEL scripts
|
|
13. QA: Verify all features (frame rate adjustment, user rate, post-effects, caching) and report bugs
|
|
|
|
## Assignments
|
|
- Developer 1: Tasks 1, 2, 3, 8 (project setup, FFmpeg, Maya node, caching)
|
|
- Developer 2: Tasks 4, 5, 6, 7 (viewport, frame rate sync, user rate, post-effects)
|
|
- QA Engineer: Tasks 9, 10, 11, 12, 13 (module packaging, test plans, testing) |