انعكاسات السماء
في Azure Remote Rendering، يتم استخدام نسيج السماء لإضاءة الكائنات بشكل واقعي. بالنسبة لتطبيقات الواقع المعزز ، يجب أن يشبه هذا الملمس محيطك في العالم الحقيقي ، لجعل الأشياء تبدو مقنعة. توضح هذه المقالة كيفية تغيير نسيج السماء.
ملاحظة
يشار إلى نسيج السماء أيضا باسم خريطة البيئة. وتستخدم هذه المصطلحات بالتبادل.
إضاءة الكائن
يستخدم Azure Remote Rendering العرض المستند إلى الماديين (PBR) لإجراء عمليات حسابية واقعية للإضاءة. على الرغم من أنه يمكنك إضافة مصادر ضوء إلى المشهد الخاص بك ، إلا أن استخدام نسيج جيد للسماء له أكبر تأثير.
تظهر الصور أدناه نتائج إضاءة الأسطح المختلفة فقط بنسيج السماء:
| خشونه | 0 | 0.25 | 0.5 | 0.75 | 1 |
|---|---|---|---|---|---|
| غير معدني | ![]() |
![]() |
![]() |
![]() |
![]() |
| معدن | ![]() |
![]() |
![]() |
![]() |
![]() |
لمزيد من المعلومات حول نموذج الإضاءة، راجع فصل المواد .
هام
يستخدم Azure Remote Rendering نسيج السماء فقط لنماذج الإضاءة. إنه لا يجعل السماء كخلفية ، لأن تطبيقات الواقع المعزز لديها بالفعل خلفية مناسبة - العالم الحقيقي.
تغيير نسيج السماء
لتغيير خريطة البيئة ، كل ما عليك فعله هو تحميل نسيج وتغيير الجلسة SkyReflectionSettings:
async void ChangeEnvironmentMap(RenderingSession session)
{
try
{
Texture skyTex = await session.Connection.LoadTextureFromSasAsync(new LoadTextureFromSasOptions("builtin://VeniceSunset", TextureType.CubeMap));
session.Connection.SkyReflectionSettings.SkyReflectionTexture = skyTex;
}
catch (RRException exception)
{
System.Console.WriteLine($"Setting sky reflection failed: {exception.Message}");
}
}
void ChangeEnvironmentMap(ApiHandle<RenderingSession> session)
{
LoadTextureFromSasOptions params;
params.TextureType = TextureType::CubeMap;
params.TextureUri = "builtin://VeniceSunset";
session->Connection()->LoadTextureFromSasAsync(params, [&](Status status, ApiHandle<Texture> res) {
if (status == Status::OK)
{
ApiHandle<SkyReflectionSettings> settings = session->Connection()->GetSkyReflectionSettings();
settings->SetSkyReflectionTexture(res);
}
else
{
printf("Texture loading failed!\n");
}
});
}
لاحظ أنه LoadTextureFromSasAsync يتم استخدام البديل أعلاه لأنه يتم تحميل نسيج مضمن. في حالة التحميل من مخازن blob المرتبطة ، استخدم المتغير LoadTextureAsync .
أنواع نسيج السماء
يمكنك استخدام كل من الخرائط المكعبةوالقوام 2D كخرائط بيئة.
يجب أن تكون جميع القوام بتنسيق نسيج مدعوم. لست بحاجة إلى توفير mipmaps لقوام السماء.
خرائط البيئة المكعبة
للإشارة ، إليك خريطة مكعبة غير مغلفة:

استخدم RenderingSession.Connection.LoadTextureAsync/ LoadTextureFromSasAsync مع TextureType.CubeMap لتحميل القوام المكعب.
خرائط بيئة اسفير
عند استخدام نسيج 2D كخريطة بيئة، يجب أن تكون الصورة في مساحة إحداثيات كروية.

استخدم RenderingSession.Connection.LoadTextureAsync مع TextureType.Texture2D لتحميل خرائط البيئة الكروية.
خرائط البيئة المدمجة
يوفر Azure Remote Rendering بعض خرائط البيئة المضمنة المتوفرة دائما. جميع خرائط البيئة المدمجة هي خرائط مكعبة.
| المعرّف | الوصف | توضيح |
|---|---|---|
| builtin://Autoshop | مجموعة متنوعة من الأضواء الشريطية ، إضاءة قاعدة داخلية ساطعة | ![]() |
| builtin://BoilerRoom | إعداد إضاءة داخلية ساطعة ، أضواء نافذة متعددة | ![]() |
| builtin://ColorfulStudio | أضواء ملونة بشكل متفاوت في الأماكن المغلقة متوسطة الإضاءة | ![]() |
| builtin://Hangar | ضوء القاعة المحيطة الساطع بشكل معتدل | ![]() |
| builtin://IndustrialPipeAndValve | إعداد داخلي خافت مع تباين فاتح داكن | ![]() |
| builtin://Lebombo | ضوء الغرفة المحيطة النهارية ، ضوء منطقة النافذة الساطعة | ![]() |
| builtin://SataraNight | سماء الليل المظلمة والأرض مع العديد من الأضواء المحيطة | ![]() |
| builtin://SunnyVondelpark | ضوء الشمس الساطع وتباين الظل | ![]() |
| builtin://Syferfontein | ضوء السماء الصافي مع إضاءة أرضية معتدلة | ![]() |
| builtin://TearsOfSteelBridge | أشعة الشمس والظل المعتدلة | ![]() |
| builtin://VeniceSunset | ضوء غروب الشمس في المساء يقترب من الغسق | ![]() |
| builtin://WhippleCreekRegionalPark | ألوان الضوء الساطعة والخضراء المورقة والبيضاء والأرض الخافتة | ![]() |
| builtin://WinterRiver | النهار مع ضوء أرضي محيطي ساطع | ![]() |
| builtin://DefaultSky | نفس دموع أوف ستيلبريدج | ![]() |






















