2008-09-15 12 views
7

मैं ऐसे एप्लिकेशन पर काम कर रहा हूं जिसे सर्वर पर सरल 3 डी दृश्यों को तुरंत प्रस्तुत करने की आवश्यकता है, और फिर उन्हें HTTP के माध्यम से जेपीईजी के रूप में वापस कर दें।सर्वर-साइड 3 डी प्रतिपादन के लिए एपीआई

<img src="http://www.myserver.com/renderimage?scene=1&x=123&y=123&z=123"> 

मेरा प्रश्न प्रौद्योगिकियों प्रतिपादन करने के लिए उपयोग करने के लिए क्या बारे में है: असल में, मैं बस, एक HTML पृष्ठ में एक गतिशील 3D दृश्य शामिल करने के लिए की तरह कुछ करने से सक्षम होना चाहते हैं। डेस्कटॉप एप्लिकेशन में मैं काफी स्वाभाविक रूप से डायरेक्टएक्स का उपयोग करता हूं, लेकिन मुझे डर है कि यह सर्वर-साइड एप्लिकेशन के लिए आदर्श नहीं हो सकता है जो दर्जनों या यहां तक ​​कि सैकड़ों उपयोगकर्ताओं के लिए छवियां बनायेगा। क्या किसी को इसका कोई अनुभव है? क्या कोई 3 डी एपीआई (अधिमानतः स्वतंत्र रूप से उपलब्ध) है जो इस एप्लिकेशन के लिए आदर्श होगा? क्या स्क्रैच से सॉफ़्टवेयर रेंडरर लिखना बेहतर है?

डायरेक्टएक्स या ओपनजीएल का उपयोग करने के बारे में मेरी मुख्य चिंता यह है कि क्या यह वर्चुअलाइज्ड सर्वर वातावरण में अच्छी तरह से काम करेगा, और चाहे यह सामान्य सर्वर हार्डवेयर (जिस पर मेरा नियंत्रण कम हो) के साथ समझ में आता है।

उत्तर

5

मानसिक छवियों द्वारा वास्तविकता सर्वर को यहां वर्णित सटीक रूप से करने के लिए डिज़ाइन किया गया है। अधिक जानकारी उत्पाद पृष्ठ (डाउनलोड करने योग्य डेवलपर संस्करण सहित) पर उपलब्ध हैं।

RealityServer docs

+1

जाने का तरीका है लिंक लिंक मर चुका है। – Soviut

+0

ऐसा लगता है कि http://RealityServer.com अब सही लिंक है। इस साइट के लिए –

+0

प्रमाणीकरण आवश्यक है – Atrahasis

4

आईडी कहता है कि आपकी सबसे अच्छी शर्त में डायरेक्ट 3 डी/ओपनजीएल ऐप सर्वर पर चल रहा है (बिना रोक के)। सर्वर सर्वर को प्रतिपादन ऐप के लिए अनुरोध भेजते समय, और प्रतिपादन ऐप एक jpg/png/जो कुछ भी वापस झुकता है।

  • Direct3D/ओपन हार्डवेयर में दृश्य प्रस्तुत करना धीमा करने के लिए है, तो किसी भी सॉफ्टवेयर समाधान भी बदतर हो जाएगा
  • तक प्रतिपादन एप्लिकेशन को चालू रखने के लिए, आप बनाने/बनावट, backbuffers को नष्ट करने में भूमि के ऊपर से परहेज कर रहे हैं, वर्टेक्स बफर, इत्यादि। आप संभावित रूप से एक सेकंड को 100 बार एक बार दृश्य प्रस्तुत कर सकते हैं।

हालांकि कई सर्वरों में ग्राफिक्स कार्ड नहीं हैं। डायरेक्ट 3 डी सॉफ्टवेयर में काफी हद तक बेकार है (एमएस से एक नकली डिवाइस है, लेकिन परीक्षण प्रभावों के लिए यह केवल अच्छा है), सॉफ्टवेयर में ओपनजीएल की कोशिश कभी नहीं की।

0

इतना एपीआई नहीं बल्कि एक प्रस्तुतकर्ता; Povray? http इंटरफ़ेस भी मौजूद है ...

0

सर्वर साइड प्रतिपादन केवल तभी समझ में आता है जब दृश्य में बड़ी संख्या में ऑब्जेक्ट होते हैं जैसे कि ग्राहक प्रतिपादन के लिए क्लाइंट को सेट डेटा का डाउनलोड बहुत धीमा हो जाएगा और प्रतिपादन रीयलटाइम में होने की उम्मीद नहीं है। यदि आप प्रगतिशील दृश्य डाउनलोड के साथ jogl जैसे कुछ उपयोग करते हैं, तो क्लाइंट साइड प्रतिपादन बहुत मुश्किल नहीं है (यानी अग्रभूमि वस्तुओं को डाउनलोड करें और प्रस्तुत करें, फिर दृश्य बिंदु से दूरी पर आधारित वस्तुओं को क्रमशः डाउनलोड करें और फिर से प्रस्तुत करें)।

यदि आप वास्तव में सर्वर साइड प्रतिपादन करना चाहते हैं, तो आप वेब सर्वर भाग और प्रतिपादन भाग को दो कंप्यूटरों पर अलग-अलग कॉन्फ़िगर करना चाहते हैं, जिनमें प्रत्येक कार्य को उनके कार्य के लिए बेहतर रूप से कॉन्फ़िगर किया गया है (प्रस्तुतकर्ता के पास ओपनजीएल कार्ड, न्यूनतम एचडी और पर्याप्त RAM है, सर्वर में बहुत तेज़ डिस्क हैं, बहुत सारे राम, बैकअप और कोई ओपनजीएल नहीं है)। मुझे बहुत संदेह है कि आप वर्चुअलाइज्ड सर्वर पर हार्डवेयर प्रतिपादन करने में सक्षम होंगे क्योंकि सर्वर में शायद GPU नहीं है।

+1

ओपी सर्वर पर प्रस्तुत करना चाहते हैं कारण कारण यह है कि मुझे यह प्रश्न मिला; वे सर्वर पर अपलोड किए गए दृश्य से थंबनेल या फ्रेम grabs प्रस्तुत करना चाहते हैं। – Soviut

+0

सर्वर साइड प्रतिपादन के लिए एक अन्य कारण सुरक्षा है (क्लाइंट-साइड प्रतिपादन डेटा को स्मृति में छोड़ा जा सकता है)। यदि आप संवेदनशील डेटा को डिवाइस पर स्थानांतरित नहीं करना चाहते हैं, तो सर्वर-साइड प्रतिपादन – CantrianBear

0

याफ़ारे (http://www.yafaray.org/) सामान्य 3 डी प्रतिपादन के लिए विचार करने के लिए एक अच्छा पहला विकल्प हो सकता है। यह काफी तेज़ है और परिणाम बहुत अच्छे लगते हैं। इसका इस्तेमाल अन्य सॉफ़्टवेयर के भीतर किया जा सकता है, उदा। ब्लेंडर 3 डी मॉडलर। लाइसेंस एलपीजीएल है।

सर्वर साइड सॉफ्टवेयर पायथन में लिखा जाना होता है, और वांछित 3D दृश्य वैज्ञानिक डेटा की एक दृश्य है, तो MayaVi2 http://mayavi.sourceforge.net/ पर गौर करें, या यदि नहीं, तो http://www.vrplumber.com/py3d.py

जो लोग पर एक ब्राउज़ के लिए जाना व्यापक रूप से लोकप्रिय पीओवी-रे को यह समझने की आवश्यकता है कि यह लाइब्रेरी या किसी भी प्रकार की इकाई नहीं है जो एपीआई प्रदान करती है। सर्वर-साइड प्रक्रिया को टेक्स्ट दृश्य फ़ाइल लिखने की आवश्यकता होगी, सही विकल्प के साथ पीओवी-रे चलाने के लिए एक नई प्रक्रिया निष्पादित करें, और परिणामस्वरूप छवि फ़ाइल लें। यदि किसी विशेष एप्लिकेशन के लिए सेट करना आसान है, और यदि आपके पास अन्य प्रस्तुतकर्ताओं की तुलना में पीओवी-रे के साथ अधिक विशेषज्ञता है, तो इसके लिए भी जाएं!

0

आप जावा 3 डी (https://java3d.dev.java.net/) पर भी देख सकते हैं, जो आपके सर्वर आर्किटेक्चर जावा-आधारित पहले से ही एक शानदार समाधान होगा।

मैं सॉफ़्टवेयर-केवल प्रतिपादन समाधान से दूर जाने की कोशिश करने की भी सिफारिश करता हूं यदि आप कर सकते हैं - पूरी तरह से सर्वर प्रक्रियाओं को झुकाव करने की कोशिश कर रहे हैं जो सभी 3 डी प्रतिपादन हार्डवेयर ध्वनियों पर समेकित मांग कर रहे हैं जैसे बहुत सारे काम ।

1

आप लपेट सकता है पोव-रे (यहाँ POSIX और विंडोज निर्माण का उपयोग)। पीएचपी उदाहरण:

<?php 
chdir("/tmp"); 
@unlink("demo.png"); 
system("~janus/.wine/drive_c/POV-Ray-v3.7-RC6/bin/pvengine-sse2.exe /render demo.pov /exit"); 
header("Content-type: image/png"); 
fpassthru($f = fopen("demo.png","r")); 
fclose($f); 
?> 

demo.pov उपलब्ध here

आप अपने स्वयं के कैमरा निर्देशांक डालने के लिए Jinja2 जैसी एक templating भाषा का उपयोग कर सकते हैं।

-2

wgpu.net देखें।

मुझे लगता है कि यह बहुत उपयोगी है।

+0

पर बदल दिया है यह सेवा अभी तक लॉन्च नहीं हुई प्रतीत होती है। कोई दस्तावेज या एपीआई नहीं, सिर्फ एक तकनीकी डेमो। आपको किस तरह से यह उपयोगी पाया है? –

+0

मैं वेब पर 3 डी मॉडल डालने के लिए समाधान ढूंढ रहा हूं और उपयोगकर्ताओं को उन्हें देखने की अनुमति देता हूं और उदाहरण के लिए खरीद :)। मेरी कंपनी के लिए मुख्य आवश्यकता मॉडल सुरक्षित करना है। मैंने उन्हें कुछ प्रश्न लिखे और यह सीम है कि यह सबसे अच्छा विकल्प होगा। मैं उपयोग करने के लिए समाधान ढूंढ रहा हूं या यहां तक ​​कि कुछ खरीदने और अपने सर्वर पर मेजबान भी ढूंढ रहा हूं। मुझे कीमतों के बारे में आश्चर्य है। – Magdalena

+1

यह पृष्ठ अब काम नहीं कर रहा है। – paqogomez

संबंधित मुद्दे