Bagaimana saya bisa mendapatkan rumput PagedGeometry untuk menerima bayangan?

23

Saya beralih ke Ogre3D (v1.7) dan menggunakan PagedGeometry . Apa yang saya coba lakukan adalah membuat adegan sederhana dengan medan, beberapa pohon dan rumput. Singkatnya, saya ingin mencapai efek seperti ini di Ogre:

Rumput Menerima Bayangan

Bayangan transparan / cut-out diimplementasikan dalam demo PagedGeometry tetapi saya tidak dapat menemukan solusi tentang cara membuat bayangan dengan benar pada rumput seperti contoh di atas.

Teknik apa yang bisa saya gunakan untuk mencapai ini?

scottyp
sumber
1
Jenis bahan apa / shader rumput menggunakan? Agar shadowing dapat bekerja, shader rumput harus membaca shadowmap (s) dan melakukan perhitungan shadow berdasarkan ini ...
VB_overflow
1
Hargai masukan Anda pada @VB_overflow ini, tetapi komentar dengan solusi atau contoh kode aktual akan sangat membantu. Bagaimanapun, saya telah pindah ke mesin yang lebih baik dengan fungsionalitas bawaan yang menawarkan fitur ini. Mungkin, itu akan membantu penggemar Ogre lain yang berada di kapal yang sama dengan saya, seperti yang ditunjukkan dengan upvotes di sini.
scottyp
1
Jika ini adalah papan iklan, mereka cenderung bertindak agak funky ketika Anda mencoba melakukan per-pixel pada mereka. Anda dapat menggunakan metch grass yang bentuknya seperti pesawat yang memanjang dan memutar. Teksturnya akan membuatnya terlihat seperti rumput. Setelah itu, mesh harus dapat menerima peta bayangan.
moonshineTheleocat
Apakah posting ini menjelaskan (dan menyelesaikan) masalah Anda? ogre3d.org/addonforums/14/t-8945.html
Tim Holt

Jawaban:

3

Ini bukan jawaban saya, tetapi referensi untuk apa yang saya yakini adalah solusi untuk pertanyaan itu.

Posting yang saya tautkan ke bawah (berjudul "pohon geometri dan bayangan paged") secara langsung menjelaskan pemecahan masalah menempatkan bayangan pohon di rumput dengan geometri halaman. Ini secara khusus melibatkan pemanggilan m_sceneMgr-> setShadowTechnique (SHADOWTYPE_TEXTURE_ADDITIVE) dengan custom shader untuk bayangan.

https://www.ogre3d.org/addonforums/14/t-8945.html atau versi Archive.org .

Tutorial ini juga merujuk pada geometri halaman, pohon, rumput, dan bayangan. Itu berlaku lightmap ke rumput, gunakan fungsi setColorMap ().

https://ogrecave.github.io/ogre-pagedgeometry/tut3.html atau versi Archive.org . Ini khusus menerapkan lightmap ke rumput, gunakan fungsi setColorMap ().

Tim Holt
sumber
Jawaban ini akan lebih baik jika Anda mengambil perincian yang relevan dari situs yang Anda tautkan dan merangkumnya di badan jawaban itu sendiri. Seperti yang terjadi, jika tautannya putus, jawabannya akan dibiarkan tanpa informasi yang berguna.
DMGregory
1
Saya mempertimbangkan untuk memasukkan konten dari posting, tetapi tidak ingin hanya menduplikasi konten seseorang dan menyebutnya sebagai jawaban. Solusinya juga agak berat kode, dan mengutip mereka akan melibatkan banyak konten yang disalin, yang lagi-lagi, bukan kreasi saya. Saya juga mempertimbangkan untuk menginstal Ogre dan mencoba menduplikasinya tetapi itu banyak pekerjaan untuk beberapa poin rep. Terlepas dari itu, saya pikir tautan tersebut akan membantu OP keluar, dan siapa pun yang mencoba untuk menyelesaikan masalah tersebut. Saya kira untuk mencegah tautan mati, saya dapat menautkan ke versi archive.org ...
Tim Holt