Giter Club home page Giter Club logo

m-r-davari / flutter_3d_controller Goto Github PK

View Code? Open in Web Editor NEW
71.0 2.0 4.0 26.81 MB

A Flutter package for rendering interactive 3D models in different formats(glb, gltf, fbx, obj), with ability to control animations, textures and camera.

Home Page: https://pub.dev/packages/flutter_3d_controller

License: MIT License

Kotlin 0.09% Swift 1.32% Objective-C 0.84% Dart 61.46% CMake 13.98% C++ 16.73% C 1.24% HTML 1.29% Shell 0.41% Ruby 2.01% Java 0.65%
model-viewer models-3d models3d objects-3d viewer-3d 3d-animation 3d-controller 3d-objects dart flutter

flutter_3d_controller's Introduction

About Me

Hey this is MohammadReza ๐Ÿ™‹๐Ÿปโ€โ™‚๏ธ

I'm a seasoned software engineer with a profound expertise in Android and Flutter development. With over 7 years of tech industry experience, including 4 years dedicated to Flutter, I possess a strong track record of designing, implementing, and maintaining production-ready mobile applications based on cutting-edge technologies such as Java/Kotlin for Android and Dart for Flutter. My journey includes leadership roles where I've successfully led teams. as a creative, hardworking team player who enjoys sharing my experience and helping to solve challenges from different perspectives, such as business, management, and software, I can play an essential role in the decision-making of cross-functional teams.

This banner ๐Ÿ‘‡๐Ÿป and the widgets below have been created by the Github Readme Beautifier project which I have developed.

Text changing depending on mode. Light: 'LightMeme' Dark: 'DarkMeme'

Its a web app to beautify and enhance your Github README file, that provides interesting widgets in GIF(animated) formats.

Text changing depending on mode. Light: 'LightMeme' Dark: 'DarkMeme' Text changing depending on mode. Light: 'LightMeme' Dark: 'DarkMeme'


Show some โค๏ธ๏ธ and support me with Github star โญ๏ธ . (How To Use)
You are welcomed to contribute.

Notes

This project has been developed using Flutter web.

flutter_3d_controller's People

Contributors

m-r-davari avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar

flutter_3d_controller's Issues

Not working on iOS

When I try to load a glb object in iOS and invoke this method:

animations = await _controller.getAvailableAnimations();

I get the following error:

Exception has occurred.
FormatException (FormatException: Unexpected character (at character 1)
(
^
)

Any idea how I can solve this issue?

Note that its working well on Android.

Clicking on 3D Models and Feature to Zoom In on the Clicked Model Part

First of all, congratulations on creating a successful library. Upon inspecting the library, I noticed that it only covers basic features such as viewing, animation, etc. However, I would like to request the addition of features like clicking on a multi-part object in OBJ format and displaying a selected effect when clicked. Thank you.

View Application Directory Models

I want to download models from the network and preview them after saving them in the application's directory. Is this approach feasible? I noticed that in your example, you passed a static file path; can it instead reference files within the application's directory?

Dynamically add textures from a path

I have a simple sofa with white background in my .glb file. I want to change the fabric based on the option selected by the user, I have url's for the fabric images. Is this possible?

DIspose not present

Hi I was trying out the package for the POC and I've managed to expirience the memory related issues.
After using the hot reload feature the app leaks the controller and setState is called after the widget is not mounted in the tree.

[log] setState() called after dispose(): ModelViewerState#c07b1(lifecycle state: defunct, not mounted)
      This error happens if you call setState() on a State object for a widget that no longer appears in the widget tree (e.g., whose parent widget no longer includes the widget in its build). This error can occur when code calls setState() from a timer or an animation callback.
      The preferred solution is to cancel the timer or stop listening to the animation in the dispose() callback. Another solution is to check the "mounted" property of this object before calling setState() to ensure the object is still in the tree.
      This error might indicate a memory leak if setState() is being called because another object is retaining a reference to this State object after it has been removed from the tree. To avoid memory leaks, consider breaking the reference to this object during dispose().
[log] #0      State.setState.<anonymous closure> (package:flutter/src/widgets/framework.dart:1167:9)
      #1      State.setState (package:flutter/src/widgets/framework.dart:1202:6)
      #2      ModelViewerState._initController (package:flutter_3d_controller/src/modules/model_viewer/model_viewer_mobile.dart:219:5)
      <asynchronous suspension>

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.