Feature 1: UI_Draw

Title:

UI_Draw: Interactive Drawing and Shape Creation

Description:

Allows users to create shapes with customized colors and materials and manage created objects within a Unity scene.

Input:

  • User interaction via mouse clicks
  • Dropdown selections for color, shape, and material
  • Slider adjustments for RGB values
  • Button clicks for applying materials and clearing the scene

Process:

  1. Start:
    • Initialize chosen color and add listeners to buttons.
  2. Update:
    • Update color preview and chosen color.
    • Check if mouse pointer is over a UI element.
    • Handle left mouse button click to create a single shape.
    • Handle right mouse button click to create multiple shapes.
  3. CreateShape:
    • Create a shape at the specified position with selected color and material.
    • Store the created shape.
  4. CreateMultipleShapes:
    • Create a grid of shapes at the specified position.
    • Store each created shape.
  5. ColorDropdown_IndexChanged:
    • Update the chosen color based on the selected index.
  6. ShapeDropdown_IndexChanged:
    • Update the shape index based on the selected index.
  7. MaterialDropdown_IndexChanged:
    • Update the material index based on the selected index.
  8. SliderChanged_Red/Green/Blue:
    • Update the RGB values based on slider adjustments.
  9. ButtonApply:
    • Apply the selected color to the created object.
  10. ClearScene:
    • Destroy all created objects and clear the lists.
  11. UpdateMousePositionText:
    • Display the current mouse position in world coordinates.
  12. ApplyMaterial:
    • Apply the selected material and color to the last created object.

Output:

  • Shapes created at specified positions with selected colors and materials.
  • Updated color preview and mouse position text.
  • Cleared scene of created objects.

Feature 2: Shape Randomizer

Title:

Shape Randomizer: Apply Random Rotations

Description:

Allows users to apply random rotations to created shapes.

Input:

  • Toggle switch for random rotation

Process:

  1. Start:
    • Add listener to the random rotation toggle.
  2. Update:
    • Apply random rotation if the toggle is on.
  3. ToggleRandomRotation:
    • Apply random rotation to created shapes if the toggle is on.
  4. ApplyRandomRotation:
    • Apply random rotation to all created objects.

Output:

  • Applied random rotations to created shapes.

Feature 3: Shape Reset Rotations

Title:

Shape Reset Rotations: Reset Object Rotations

Description:

Allows users to reset the rotations of created shapes to their original rotations.

Input:

  • Toggle switch for reset rotation

Process:

  1. Start:
    • Add listener to the reset rotation toggle.
  2. Update:
    • Reset rotation if the toggle is on.
  3. ToggleResetRotation:
    • Reset rotation of created shapes if the toggle is on.
  4. ResetRotation:
    • Reset rotation of all created objects to their original state.

Output:

  • Reset rotations of created shapes to their original states.

Feature 4: TimeZoneDropdownHandler

Title:

TimeZoneDropdownHandler: Time Zone Selection

Description:

Provides a dropdown menu for users to select a time zone, affecting the displayed time on the clock.

Input:

  • Dropdown selection for time zones

Process:

  1. Start:
    • Populate the dropdown with available time zones.
    • Add a listener to handle dropdown value changes.
  2. PopulateDropdown:
    • Add time zone display names to the dropdown options.
  3. OnDropdownValueChanged:
    • Update the selected time zone based on the dropdown index.

Output:

  • Updated selected time zone for the clock display.

Feature 5: Clock

Title:

Clock: Real-time Clock Display

Description:

Displays the current time based on the selected time zone, updating every second.

Input:

  • Time zone information from TimeZoneDropdownHandler

Process:

  1. Awake:
    • Initialize the clock text component and set the default time zone.
  2. Update:
    • Retrieve the current UTC time.
    • Convert the UTC time to the selected time zone.
    • Format the time with leading zeros and update the text display.
  3. LeadingZero:
    • Ensure the time components (hour, minute, second) are displayed with leading zeros if necessary.

Output:

  • Real-time updated clock display with the current time in the selected time zone.

Feature 6: AnimationDropdownHandler

Title: AnimationDropdownHandler: Select and Apply Animations

Description: Allows users to select and apply animations to the created shapes, including scaling and rotating.

Input:

  • Dropdown selection for animations

Process:

  • Start:
    • Populate the dropdown with available animations.
    • Add a listener to handle dropdown value changes.
  • PopulateDropdown:
    • Add animation names to the dropdown options.
  • OnDropdownValueChanged:
    • Update the selected animation based on the dropdown index.
  • ApplyAnimation:
    • Apply the selected animation to the created objects.

Output:

  • Shapes on the screen grow and rotate based on the selected animation.

Feature 7: RotationDropdownHandler

Title: RotationDropdownHandler: Select and Apply Rotation Angles

Description: Allows users to select and apply specific rotation angles to the created shapes using a dropdown menu.

Input:

  • Dropdown selection for rotation angles

Process:

  • Start:
    • Populate the dropdown with available rotation angles.
    • Add a listener to handle dropdown value changes.
  • PopulateDropdown:
    • Add rotation angle options to the dropdown.
  • OnDropdownValueChanged:
    • Update the selected rotation angle based on the dropdown index.
  • ApplyRotation:
    • Apply the selected rotation angle to the created objects.

Output:

  • Shapes on the screen rotate based on the selected rotation angle.

Feature 8: ScaleDropdownHandler

Title: ScaleDropdownHandler: Select and Apply Scaling

Description: Allows users to select and apply specific scaling values to the created shapes using a dropdown menu.

Input:

  • Dropdown selection for scaling values

Process:

  • Start:
    • Populate the dropdown with available scaling values.
    • Add a listener to handle dropdown value changes.
  • PopulateDropdown:
    • Add scaling value options to the dropdown.
  • OnDropdownValueChanged:
    • Update the selected scaling value based on the dropdown index.
  • ApplyScaling:
    • Apply the selected scaling value to the created objects.

Output:

  • Shapes on the screen are scaled based on the selected scaling value.

Feature 9: PrefabDisplayHandler

Title: PrefabDisplayHandler: Display Prefab Scale and Rotation

Description: Allows users to visualize the current scale and rotation of prefabs within the scene, providing real-time updates as these properties change.

Input:

None (automatic updates based on prefab properties)

Process:

Start:

Initialize the display components for showing scale and rotation.

Add listeners to prefab property changes.

Update:

Retrieve the current scale and rotation of each prefab.

Update the display components with the latest scale and rotation values.

DisplayScale:

Show the current scale of the prefab.

DisplayRotation:

Show the current rotation of the prefab.

Output:

Real-time display of prefab scale and rotation values.

StatusReleased
PlatformsHTML5
AuthorAnassQ
Made withUnity

Leave a comment

Log in with itch.io to leave a comment.