3d çizim için üç.js kullanmak ve 2d çizim için aynı kanvasa fabric.js eklemek mümkün mü? Ben sadece fabric.js'nin manipülasyonu ele alış şeklini beğenirim ve bundan faydalanmak isterim. Denemeye başlamadan önce, kimsenin bunu denediğini merak ediyorum. Mümkün mü?Aynı kanvasta fabric.js ve three.js kullanabilir miyim?
cevap
both a 2D context and 3D context on the same canvas'u kullanamazsınız. Yani bu mümkündür, ancak CanvasRenderer
'u THREE.js ile kullanmak zorundasınız. Bu daha yavaştır, ancak Fabric.js bir 2B içerik kullanır. Bu nedenle, her ikisini de aynı tuvalde kullanmayı düşünüyorsanız bunu kullanmanız gerekir.
Teşekkürler Mike ... Bunu kontrol edeceğim. – leekei
Örnek programatik kod alabilir miyim? – Mullainathan
@Mullainathan No. “CanvasRenderer” bağlantısını takip edin ve orada örnek kod var. –
Alternatif bir yaklaşım, FabricJS'yi ekran dışı bir tuval ile kullanmaktır, ardından bu tuvali, ekranınızdaki WebGL/tree.js tuvaliniz ve orada oluşturduğunuz çokgen için bir doku (resim) kaynağı olarak kullanın. FabricJS etkileşimde bulunmak için
var texture = new THREE.Texture(fabricCanvas);
Is it possible to use a 2d canvas as a texture for a cube?
Eğer fare 3D poligonunda (FabricJS 2D Tuval için uyumlu koordinatlara içine WebGL Tuval için yani ters 3D matris koordinat dönüştürme dönüştürmek zorunda kalacak tuval veya Benzer bir yaklaşım. 3D uzaydaki fare koordinatlarıyla uğraşmanın bir yolu için this example'a bakın, daha sonra bu dönüşümden fare olayları üretin ve bunları ekran tuvaline gönderin. değişiklikler FabricJS için yapıldıktan sonra, doku güncelleştirmesini zorlamak:
texture.needsUpdate = true;
- 1. Aynı sunucuda APC VE memcached kullanabilir miyim?
- 2. İlerleme çubuğunu kullanabilir ve aynı parçada taramayı kullanabilir miyim?
- 3. Sayım (*) ve AND'yi aynı anda sql sorgusunda kullanabilir miyim?
- 4. GAE'de Spring kullanabilir miyim?
- 5. Android'de jmonkeyengine kullanabilir miyim?
- 6. Aynı emaclardan iki farklı lisp + slime/swanks kullanabilir miyim?
- 7. Dizide update_all kullanabilir miyim?
- 8. WPF Resim, bir kanvasta büyütme
- 9. ng tıklama ve onclick'i birlikte kullanabilir miyim
- 10. Ruby ve Python'u birlikte kullanabilir miyim?
- 11. Docker-compose'da mem_limit kullanabilir miyim? ve nasıl?
- 12. fabric.js tuval klavye olaylarını dinle?
- 13. Three.js - Geometriye pozisyon, rotasyon ve ölçek uygulayabilir miyim?
- 14. THREE.js: 2xMeseler aynı vektörü konum olarak kullanarak
- 15. IntPtr yerine SafeHandle kullanabilir miyim?
- 16. Enum'i ConverterParameter olarak kullanabilir miyim?
- 17. BeginInvoke'u MulticastDelegate ile kullanabilir miyim?
- 18. Üretim alanında paster kullanabilir miyim?
- 19. LINQ2SQL'i ODBC ile kullanabilir miyim?
- 20. FieldInfo kullanmadan OpCodes.Ldsfld kullanabilir miyim?
- 21. JSP'yi Angular2 ile kullanabilir miyim?
- 22. Gradle'da Maven eklentisini kullanabilir miyim?
- 23. nHibernate'i monotouch ile kullanabilir miyim?
- 24. Genel anahtar olarak kullanabilir miyim?
- 25. Farklı bir veritabanını kullanabilir miyim?
- 26. XESS ile LESS kullanabilir miyim?
- 27. Java Uygulamasında JNI kullanabilir miyim?
- 28. Zxing'i iş amaçlı kullanabilir miyim?
- 29. Yönergeyi bağlantı etiketinde kullanabilir miyim?
- 30. Müzik Genomu Projesi'ni kullanabilir miyim?
Hayır, ama tasarım gereksinimlerine bağlı olarak ayrı bir 2D tuval ile 3D tuval paylaşımlı biçimde - veya vize-versa. – markE
Bu tavsiyeyi gördüm, ancak bu proje 2d kanvasının (metin) 3d sahnede olmasını gerektirecek. – leekei