Konuyu Oyla:
  • Derecelendirme: 5/5 - 1 oy
  • 1
  • 2
  • 3
  • 4
  • 5
Skia FMX'in alternatifi midir?
#1
Skia'nın Delphi için ne anlama geldiğini anlamaya çalışıyorum. Özelliklere baktığım zaman bu özelliklerin zaten FMX (FireMonkey) ilk defa tanıtılırken bahsedilen özellikler olduğunu görüyorum. Delphi ile yazılmış FireMonkey (FMX) varken neden Skia gibi başka bir dille yazılmış bir kütüphaneye ihtiyacımız oluyor?
WWW
Cevapla
#2
"Skia, çeşitli donanım ve yazılım platformlarında çalışan ortak API'ler sağlayan açık kaynaklı bir 2D grafik kütüphanesidir. Google Chrome ve ChromeOS, Android, Flutter ve diğer birçok ürün için grafik motoru görevi görür", diyor kendileri.
Yani; Skia, açık kaynaklı bir 2D grafik kütüphanesidir.

SKIA ve ve FMX kıyası yanlış olur. 

FMX = Cross Platform uygulama geliştirme mimarisidir. Kütüphane değildir. 
SKIA = 2D Grafik kütüphanesidir. SKIA ile cross platform uygulama geliştirilemez.

Örneklemek gerekirse; FMX ile bir bina inşa edersiniz, fakat Skia ile bunu yapamazsınız. Skia ile yalnızca yapılmakta olan binanın dış cepe boyası veya led aydınlatmasını yaparsınız.
Begin : = end / 2;
Cevapla
#3
(16-02-2024, Saat: 12:59)RAD Coder Adlı Kullanıcıdan Alıntı: ...
...SKIA ile cross platform uygulama geliştirilemez.
...

derken yanlış anlaşılma olmasın. Skia nın kullanıldığı platform cross platform destekliyorsa ve cross platform da bu kütüphane kullanılabiliyor. Tabi kendisi ayrıca bir platforma destek sağlamıyor. Kısaca VCL yada FMX içerisinde kullanılıyor.
Cevapla
#4
@engerex
Başlıkta "Skia FMX'in alternatifi midir?" denmiş.
Bundan yola çıkarak o cümleyi kurdum.
Özetle Skia ile cross platform uygulama geliştirilemz ve FMX alternatifi olamaz. Fakat Skia, FMX üzerinde bir bileşen olarak kullanılabilir.
Begin : = end / 2;
Cevapla
#5
Bu skia nin orneklerine bir göz attım animasyonlarda çok fazla cpu kullanıyor.
Yine image çiziminde ilk render yaparken de durum aynı.
Ayakkabıyı sefaletten
Çok sonraları tanıdım
Öyle ufuklarda mı olurmuş Allah'ım
Giyer giyer koşardım
Toprağın dostluğundan
Oyuncaklar yaptım çamurdan
Tenimin rengini aldım topraktan
Sen bakma esmerliğim sonradan...





Cevapla
#6
Merhaba,

Güzel bir konu ve buradan güzel konuşmalar çıkabilir. 
Skia üzerinde o kadar durdular ki gerek tanıtımlar gerek ise de eğitim videolarında "olmasaydı olmazdık" derecesinde anlatımlar yapıldı. Bu gerçekten fazla abartılı! 
Resmi olarak Embarcadero tarafından dikkatleri üzerine topladığında projemde uzun zaman sonra ilk defa üçüncü parti bileşen kullanmaya başladım. Sonra Delphi 12'ye entegre edildi tabi bu da onun artık güvenli sularda olduğunu gösterir diye düşünüyorum.
"5 bileşen ile hayal edebildiğini yap" diyorlar hatta bunun için Macbook ödüllü yarışma düzenlendi.
Google tarafından üretilen skia kütüphanesini Delphi için hem VCL hem de FMX tarafına uyarlayarak açık kaynak şekilde kullanıma sunan (sanırım 3 kişi)'lar olmasa ne olacaktı diye düşünmemek elde değil.

Skia sunduğu özellikler ile çok güzel fakat her cihaz üzerinde çalışmıyor ve her cihaz üzerinde de sağlıklı çalışmıyor. 
Onlarca çeşit android cihaz da ve IOS cihazda test etme imkanım oldu ve deyimlerim;
- Giriş seviyesi bazı android cihazlarda uygulama donuyor ve sonrası yok.
- Orta sınıf bazı android cihazlarda kasma ve donmalar yaşanıyor.
- Yüksek pil tüketimine neden oluyor. Iphone cihazınızı skia kütüphaneli basit bir uygulama ile cep sobasına çevirebilirsiniz.
- Orta sınıf bazı android cihazlarda SkLabel bileşeni fontları kalın ve simsiyah (siyah bile değil ) bir şekilde görünüyor. Yani font uyuşmazlığı var. Uyuşmazlık hak getire bildiğin yok sayıyor ve saçma sapan bir şekilde çizim gerçekleştiriyor. (  Ekran görüntüleri ekleyeceğim cihazlardan aldığımda )

En kritik olanı ise;
GlobalUseSkia := True;

Yukarıdaki o abartılarla  süslenen  ve "Tek satırda dünyan değişsin" diye övülen kod satırı Delphi 12 üzerinde tetiklendiğinde uygulamam "Access Violation" hatalarıyla tıkladığım her skia bileşeni olan ekranda yeşeriyor. FMX'in kendi görsel bileşenleri ile kullanımında sanırım öngöremedikleri bazı bileşenler var ve bende o bileşenleri kullandığım için bu sorunlara neden oluyor fakat henüz tespit edemedim.

O yüzden benim için sıradan görsel bileşen kütüphanesi olarak palette alanında yer alıyor.

Tabi bunlar benim deneyimlerim. Adamlar oyun içi görüntüleri skia ile kullanıyor ve hiçbir sorun olmaz iken benim basit grafiksel uygulamalarımda bunların yaşanıyor olması benden kaynaklıdır fakat en temel kullanıcı gözünden deneyimlediğim bu idi.

Ayrıca söylemeden olmaz;
Skia başka dilde yazılmış olabilir ama Delphi için olanı Delphi kodları ile üretilmiştir. Aksi halde kuramazdınız Smile
FMX - Software Developer | Serhat Yanalak
Cevapla
#7
orangeui kulladığım uygulamada Skiayi Arapça destek için ekledim. skia bileşenleri sadece başlangıçta animasyon kullanıyorum. Pdf oluşturma da kullanmaya düşüyorum

1 yıldır aktif uygulamda kullanıyorum, psikolojik olarak daha hızlı gibi geliyor. GPU destek aktif edildiğinde ara ara sıkıntı yaşlığım var. en son sürümde GPU aktif ettim.

GlobalUseSkia := True;
{$IF DEFINED(IOS)}
GlobalUseMetal := True;
{$ENDIF}
{$IF DEFINED(ANDROID) or DEFINED(MSWINDOWS)}
GlobalUseVulkan := True;
{$ENDIF}
Cevapla
#8
@Mr.X Bazı sorunlarınızın çözümü var diye hatırlıyorum. GlobalUseSkia := True ile yaşadığınız problemler için 1-2 true daha yapmak gerekebiliyor.
Skia telegram kanalından sorunlar için direk geliştiriciden destek alabilirsin.
Cevapla
#9
(17-02-2024, Saat: 12:30)engerex Adlı Kullanıcıdan Alıntı: @Mr.X Bazı sorunlarınızın çözümü var diye hatırlıyorum. GlobalUseSkia := True ile yaşadığınız problemler için 1-2 true daha yapmak gerekebiliyor.
Skia telegram kanalından sorunlar için direk geliştiriciden destek alabilirsin.

Merhaba hocam,
Denememiştim deneyeceğim. Telegram kanalına dikkat etmemişim akşam biraz kurcalarım.
Teşekkür ederim.
FMX - Software Developer | Serhat Yanalak
Cevapla


Konu ile Alakalı Benzer Konular
Konular Yazar Yorumlar Okunma Son Yorum
  Her yazılımcı bir gün PHP tadacak mıdır ? yhackup 14 10.900 17-11-2017, Saat: 14:58
Son Yorum: mad85



Konuyu Okuyanlar: 1 Ziyaretçi