मुझे नहीं पता कि मैं कुछ गलत कर रहा हूं या कुछ भी याद कर रहा हूं, लेकिन मैं धूप में दिन की तरह सूरज की रोशनी का अनुकरण करना चाहता हूं।
जब ऑब्जेक्ट दिशात्मक प्रकाश का सामना कर रहा है, तो यह अच्छी तरह से जलाया जाता है और वहां कोई समस्या नहीं है। अगर मैं ऑब्जेक्ट के चारों ओर जाता हूं और इसे वापस देखता हूं, तो यह अंधेरा है। यह बहुत अंधेरा नहीं है क्योंकि मैं उपयोग कर रहा हूं GL_AMBIENT
लेकिन यह अभी भी एक धूप दिन के लिए बहुत अंधेरा है। यदि मैं मूल्य बढ़ाता हूं, तो यह कभी भी बेहतर नहीं होगा क्योंकि प्रकाश का सामना करने वाली वस्तु का पक्ष बहुत उज्ज्वल होगा।
और परिवेश प्रकाश के साथ एक और कष्टप्रद मुद्दा है, जब ऑब्जेक्ट के पीछे की ओर देखते हुए, मैं किसी भी आकार, केवल एक सादे रंग नहीं देख सकता। व्याख्या करना कठिन है, यहाँ कुछ चित्र हैं:
ऑब्जेक्ट फ्रंट: http://i.stack.imgur.com/YW53X.png
ऑब्जेक्ट बैक: http://i.stack.imgur.com/Qufha.png
जैसा कि आप आसानी से देख सकते हैं, सामने की तरफ अच्छा दिखता है, आप उस लाल चीज़ का आकार देख सकते हैं। पीछे की तरफ, यह सीधा है, आप एक ही आकार नहीं देख सकते।
अब, मुझे पता है कि मैं एक वस्तु के पीछे देख रहा हूं और मैं प्रकाश की दिशा में देख रहा हूं और यह सामने की तरफ से गहरा होना चाहिए। लेकिन यह इस तरह सादा नहीं दिखना चाहिए। ऐसा नहीं है कि जब हम किसी वस्तु को देखते हुए सूर्य प्रकाश के खिलाफ जाते हैं, तो हम देखते हैं कि वस्तुएं कुछ आकृति बनाती हैं।
OpenGL पर मेरा (या समान) प्रभाव कैसे हो सकता है?
मेरा प्रकाश वर्तमान में इस तरह परिभाषित किया गया है:
float posLight0[4] = {-1.0f, 1.0f, 1.0f, 0.0f};
float ambLight0[4] = {0.5f, 0.5f, 0.5f, 0.5f};
glLightfv(GL_LIGHT0, GL_POSITION, posLight0);
glLightfv(GL_LIGHT0, GL_AMBIENT, ambLight0);