#5 Refactor Requirements

Closed
opened 3 years ago by NGnius · 1 comments
NGnius commented 3 years ago

Pixi was originally designed to only handle image importing, but Pixi's functionality has expanded to importing other files as well. As a direct result, Pixi needs to be remodeled and refactored to make support for new filetypes easier.

The refactored code should satisfy the following requirements:

  • Optimised structure importing (less/no freezing during import)
  • Generic block placement (re-usable)
  • Modular filetype importing (standard interface)
  • Blueprint file loading & block conversion interception

I'm picturing a loading process something like this.

Without blueprint interception:

PixiCommand “filename” -> determine filetype -> find filetype's conversion module -> get blocks to place from module -> place blocks

With blueprint interception:

PixiCommand “filename” -> determine filetype -> find filetype's conversion module -> get blueprints to place from module -> convert blueprints to blocks -> place blocks

Pixi was originally designed to only handle image importing, but Pixi's functionality has expanded to importing other files as well. As a direct result, Pixi needs to be remodeled and refactored to make support for new filetypes easier. The refactored code should satisfy the following requirements: - Optimised structure importing (less/no freezing during import) - Generic block placement (re-usable) - Modular filetype importing (standard interface) - Blueprint file loading & block conversion interception I'm picturing a loading process something like this. Without blueprint interception: PixiCommand "filename" -> determine filetype -> find filetype's conversion module -> get blocks to place from module -> place blocks With blueprint interception: PixiCommand "filename" -> determine filetype -> find filetype's conversion module -> get blueprints to place from module -> convert blueprints to blocks -> place blocks
NGnius added this to the v1.0 milestone 3 years ago
NGnius added the
enhancement
label 3 years ago
NGnius commented 3 years ago

This work has been completed in v1.0.0 (as of commit 1b126b69c0 )

This work has been completed in v1.0.0 (as of commit 1b126b69c0 )
This repo is archived. You cannot comment on issues.
No Milestone
No Assignees
1 Participants
Due Date

No due date set.

Dependencies

This issue currently doesn't have any dependencies.

Loading…
Cancel
Save
There is no content yet.