Unity'deki yüzey kalemleri nasıl desteklenir?


18

Oyunumuz dokunmatik veya fare ile harika çalışıyor, ancak Yüzey kalemi hiç bir işaretleme aygıtı olarak kaydedilmemiş gibi görünüyor. Yerel bir yapıda Unity'deki kalemi nasıl destekleyebiliriz?

Unity Answers sitesindeki bu soru , uygulamayı bir UWP uygulaması olarak oluşturabileceğimizi gösteriyor, ancak bu, kendimizi .NET çerçevesinin çok sınırlı bir alt kümesiyle sınırlamak anlamına geliyor (özellikle, Seri Arama kitaplıklarının çoğunu kaybediyoruz).


Sadece dokunmatik girdi olarak kabul edebilir misiniz?
Evorlor

@Everlor, Unity'ye dokunmatik giriş olarak kaydedilmez. Bunu nasıl yapacağınızı biliyorsanız, bu harika olurdu.
Gregory Avery-Weir

@ArcaneEngineer Emin değilim; şu anda (1) çok zor görünüyor ve (2) nasıl yapacağımdan emin değilim. Bir işletim sisteminin yerleşik giriş sistemlerinden birini desteklemek özellikle zor görünmüyor gibi görünüyor, ancak üzerinde hiç kaynak bulamıyorum.
Gregory Avery-Weir

2
Sizin gibi başka hiçbir yerde cevap bulamadım. (2) için, Unity uygulamanız tarafından çağrılan bir DLL'ye veya uygulamanızın yanında çalışan bir Windows hizmetine (veya bir hizmet iş yapmazsa Win uygulamasına) ihtiyacınız olacaktır. Bu hizmet / uygulamadaki girdileri uygun Microsoft API'sinden (Kalem, sanırım) almanız ve bu verileri IPC üzerinden Unity uygulamanıza yönlendirmeniz gerekir . Birlik doğrudan çengel DLL daha kolay görünüyor. Ancak söz konusu API'ya erişebilir mi? - Emin değilim.
Mühendis

Yanıtlar:


0

SP3'ümde kalem https://docs.unity3d.com/ScriptReference/Input-mousePosition.html ile çalışır ve x, y ve 0z koordinatlarıyla bir Vector3 döndürür. Linux'ta Unity 5.6 kullanıyorum, ancak kalem Windows'ta dokunmatik giriş olarak görünmüyorsa, aynı davranışa sahip olduğunu varsayabilirim.


3
Bu bir yorum, "Yerel bir yapıda Unity'deki kalemi nasıl destekleyebiliriz?" Sorusuna cevap değil. .
Mühendis

1
Soru hakkında yorum yapmak için yeterli temsilcim yok ve bu işe yarıyor. Bunu Windows 10 ve Unity 5.2 ile bir SP3 ile tekrar test ettim ve yüzey kaleminin yerini bir fare gibi doğru bir şekilde rapor ediyordu.
user3362964

Müthiş! Kalem pozisyonu gerçekten rapor ediliyor, ama fark etmedim çünkü kalem tıklamaları fare tıklaması olarak kaydedilmedi. Kalem dokunuşlarını fare tıklaması (veya herhangi bir girdi türü) olarak nasıl tanıyacağınız konusunda bir fikriniz var mı?
Gregory Avery-Weir

1
Kalem hareket etmeyi durdurduğunda algılamakla belki de hacky bir şey yapabilirsiniz, ancak Unity input api'de muslukları doğru bir şekilde algılayan bir şey bulamadım. @Arcane Engineer'ın önerilerinden birini kullanmanız ve verileri oyununuza aktaran harici bir şey kullanmanız gerektiğini düşünüyorum.
user3362964
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.