كيف لف الصورة حول الاسطوانة في Silverlight
-
25-09-2019 - |
سؤال
أحاول التفاف صورة حول الاسطوانة في Silverlight. نظرت كثيرًا في Google لكن لم أجد شيئًا. كما أعلم أنه يمكن القيام به باستخدام Pixel Shader ، لكن لا أعرف كيف.
هل هو ممكن؟
شكرًا.
المحلول
إنه ليس غلافًا كاملاً على الأسطوانة ، لكنك ستحصل على فكرة/مثال:
(الكود في GLSL ، ليس في HLSL ، لكنني أعتقد أنه لن يكون من الصعب تحويله)
uniform sampler2D tex;
void main()
{
vec2 cen = vec2(0.5,gl_TexCoord[0].y)-gl_TexCoord[0].xy;
cen = vec2(pow(cen.x,1.7),pow(cen.y,2.2));
cen.y = 3.9*sin(1.8*gl_TexCoord[0].x-2.3);
vec2 mcoord = 1.65*vec2(-0.22+gl_TexCoord[0].x,1.95+gl_TexCoord[0].y);
gl_FragColor = texture2D(tex, mcoord+cen);
}
من هذا
سوف تحصل على شيء من هذا القبيل
حظا طيبا وفقك الله
نصائح أخرى
قد ترغب في تجربة ZAM3D. لقد استخدمت إصدارات تجريبية سابقًا ، ويمكنك الحصول على الشكل ثلاثي الأبعاد ومحاولة ضبط الخلفية على صورة. إلقاء نظرة ومعرفة ما إذا كان ذلك يساعد.
لا تنتمي إلى StackOverflow