নামের স্ট্রিং
XR_ANDROID_face_tracking
এক্সটেনশনের ধরণ
ইনস্ট্যান্স এক্সটেনশন
নিবন্ধিত এক্সটেনশন নম্বর
৪৫৯
সংশোধন
৩
এক্সটেনশন এবং সংস্করণ নির্ভরতা
শেষ সংশোধিত তারিখ
২০২৫-০৬-০৪
আইপি স্ট্যাটাস
কোনও পরিচিত আইপি দাবি নেই।
অবদানকারীরা
স্পেন্সার কুইন, গুগল
জ্যারেড ফাইন্ডার, গুগল
লেভানা চেন, গুগল
সংক্ষিপ্ত বিবরণ
এই এক্সটেনশনটি অ্যাপ্লিকেশনগুলিকে XR অভিজ্ঞতায় মিশ্র আকারের ওজন পেতে এবং মুখের অভিব্যক্তি রেন্ডার করতে সক্ষম করে।
এই এক্সটেনশনটি ভার্চুয়াল স্পেসে ব্যবহারকারীদের বাস্তবসম্মত অবতার এবং অভিব্যক্তিপূর্ণ উপস্থাপনা তৈরি করার জন্য প্রয়োজনীয় তথ্য প্রদানের উদ্দেশ্যে তৈরি করা হয়েছে। অ্যাপ্লিকেশনটি মিশ্র আকারের ওজন পাওয়ার আগে মুখের ক্যালিব্রেশন অ্যাক্টিভেশন পরীক্ষা করতে পারে ।
ফেস ট্র্যাকার
ফেস ট্র্যাকার হল একটি সেন্সিং ডিভাইস যা ব্যবহারকারী-মুখী চিত্র স্ট্রিম এবং ক্যামেরা ক্যালিব্রেশনের মাধ্যমে মুখের অভিব্যক্তি ট্র্যাক করে। এই এক্সটেনশনের মূল উদ্দেশ্য হল ভার্চুয়াল দৃশ্যে ব্যবহারকারীর মুখের অভিব্যক্তিগুলিকে তাদের অবতারের সাথে ম্যাপ করা।
ফেস ট্র্যাকিং ডেটা হল সংবেদনশীল ব্যক্তিগত তথ্য এবং ব্যক্তিগত গোপনীয়তা এবং অখণ্ডতার সাথে ঘনিষ্ঠভাবে জড়িত। ফেস ট্র্যাকিং ডেটা সংরক্ষণ বা স্থানান্তরকারী অ্যাপ্লিকেশনগুলি সর্বদা ব্যবহারকারীর কাছ থেকে এটি করার জন্য সক্রিয় এবং নির্দিষ্ট গ্রহণযোগ্যতার জন্য অনুরোধ করার জন্য দৃঢ়ভাবে সুপারিশ করা হয়।
- একটি সক্রিয় ফেস ট্র্যাকার তৈরি করার সময় অ্যাপ্লিকেশনগুলি
XR_ERROR_PERMISSION_INSUFFICIENTপাবে যতক্ষণ না অ্যাপ্লিকেশনটিকে ফেস ট্র্যাকারে অ্যাক্সেসের অনুমতি দেওয়া হয়। - xrGetFaceStateANDROID ব্যবহার করে ফেস স্টেট পাওয়ার সময়, XrFaceStateANDROID::isValid অ্যাপ্লিকেশন অ্যাক্সেসের অনুমতি না দেওয়া পর্যন্ত
XR_TRUEফেরত দেবে না।
সিস্টেমের ক্ষমতা পরীক্ষা করুন
XrSystemFaceTrackingPropertiesANDROID কাঠামোটি নিম্নরূপ সংজ্ঞায়িত করা হয়েছে:
typedef struct XrSystemFaceTrackingPropertiesANDROID {
XrStructureType type;
void* next;
XrBool32 supportsFaceTracking;
} XrSystemFaceTrackingPropertiesANDROID;
সদস্যদের বিবরণ
-
typeহল এই কাঠামোর XrStructureType । -
nextহলNULLঅথবা একটি কাঠামো শৃঙ্খলে পরবর্তী কাঠামোর দিকে নির্দেশক। -
supportsFaceTrackingহল একটি XrBool32 যা নির্দেশ করে যে বর্তমান সিস্টেমটি ফেস ট্র্যাকিং সমর্থন করে কিনা।
একটি অ্যাপ্লিকেশন xrGetSystemProperties কল করার সময় XrSystemProperties কে XrSystemFaceTrackingPropertiesANDROID কাঠামোর সাথে প্রসারিত করে সিস্টেমটি ফেস ট্র্যাকিং করতে সক্ষম কিনা তা পরীক্ষা করতে পারে ।
যদি এবং শুধুমাত্র যদি একটি রানটাইম supportsFaceTracking জন্য XR_FALSE ফেরত দেয়, তাহলে রানটাইমকে xrCreateFaceTrackerANDROID থেকে XR_ERROR_FEATURE_UNSUPPORTED ফেরত দিতে হবে ।
একটি ফেস ট্র্যাকার হ্যান্ডেল তৈরি করুন
XR_DEFINE_HANDLE(XrFaceTrackerANDROID)
XrFaceTrackerANDROID হ্যান্ডেলটি ফেস ট্র্যাকিংয়ের জন্য একটি ফেস ট্র্যাকার উপস্থাপন করে।
এই এক্সটেনশনের অন্যান্য ফাংশন ব্যবহার করে ফেস ট্র্যাকিং ডেটা অ্যাক্সেস করতে এই হ্যান্ডেলটি ব্যবহার করা যেতে পারে ।
xrCreateFaceTrackerANDROID ফাংশনটি নিম্নরূপ সংজ্ঞায়িত করা হয়েছে:
XrResult xrCreateFaceTrackerANDROID(
XrSession session,
const XrFaceTrackerCreateInfoANDROID* createInfo,
XrFaceTrackerANDROID* faceTracker);
প্যারামিটার বর্ণনা
-
sessionহলো একটি XrSession হ্যান্ডেল যেখানে ফেস ট্র্যাকার সক্রিয় থাকবে। -
createInfoহল XrFaceTrackerCreateInfoANDROID যা ফেস ট্র্যাকার নির্দিষ্ট করতে ব্যবহৃত হয়। -
faceTrackerহল ফিরে আসা XrFaceTrackerANDROID হ্যান্ডেল।
একটি অ্যাপ্লিকেশন xrCreateFaceTrackerANDROID ফাংশন ব্যবহার করে একটি XrFaceTrackerANDROID হ্যান্ডেল তৈরি করতে পারে ।
যদি সিস্টেমটি ফেস ট্র্যাকিং সমর্থন না করে, তাহলে xrCreateFaceTrackerANDROID XR_ERROR_FEATURE_UNSUPPORTED ফেরত দেবে।
বৈধ ব্যবহার (অন্তর্নিহিত)
- xrCreateFaceTrackerANDROID কল করার আগে
XR_ANDROID_face_trackingএক্সটেনশনটি সক্রিয় করতে হবে । -
sessionঅবশ্যই একটি বৈধ XrSession হ্যান্ডেল হতে হবে -
createInfoঅবশ্যই একটি বৈধ XrFaceTrackerCreateInfoANDROID কাঠামোর নির্দেশক হতে হবে -
faceTrackerঅবশ্যই একটি XrFaceTrackerANDROID হ্যান্ডেলের নির্দেশক হতে হবে
রিটার্ন কোড
-
XR_SUCCESS -
XR_SESSION_LOSS_PENDING
-
XR_ERROR_FUNCTION_UNSUPPORTED -
XR_ERROR_VALIDATION_FAILURE -
XR_ERROR_RUNTIME_FAILURE -
XR_ERROR_HANDLE_INVALID -
XR_ERROR_INSTANCE_LOST -
XR_ERROR_SESSION_LOST -
XR_ERROR_OUT_OF_MEMORY -
XR_ERROR_LIMIT_REACHED
XrFaceTrackerCreateInfoANDROID কাঠামোটি নিম্নরূপ বর্ণনা করা হয়েছে:
typedef struct XrFaceTrackerCreateInfoANDROID {
XrStructureType type;
void* next;
} XrFaceTrackerCreateInfoANDROID;
সদস্যদের বিবরণ
-
typeহল এই কাঠামোর XrStructureType । -
nextহলNULLঅথবা একটি স্ট্রাকচার চেইনের পরবর্তী স্ট্রাকচারের দিকে নির্দেশক। কোর OpenXR বা এই এক্সটেনশনে এই ধরনের কোনও স্ট্রাকচার সংজ্ঞায়িত করা হয়নি।
XrFaceTrackerCreateInfoANDROID কাঠামোটি XrFaceTrackerANDROID হ্যান্ডেল তৈরির তথ্য বর্ণনা করে।
বৈধ ব্যবহার (অন্তর্নিহিত)
- XrFaceTrackerCreateInfoANDROID ব্যবহার করার আগে
XR_ANDROID_face_trackingএক্সটেনশনটি সক্রিয় করতে হবে । -
typeঅবশ্যইXR_TYPE_FACE_TRACKER_CREATE_INFO_ANDROIDহতে হবে -
nextঅবশ্যইNULLহতে হবে অথবা স্ট্রাকচার চেইনে পরবর্তী স্ট্রাকচারের জন্য একটি বৈধ পয়েন্টার হতে হবে।
xrDestroyFaceTrackerANDROID ফাংশনটি নিম্নরূপ সংজ্ঞায়িত করা হয়েছে:
XrResult xrDestroyFaceTrackerANDROID(
XrFaceTrackerANDROID faceTracker);
প্যারামিটার বর্ণনা
-
faceTrackerহল একটি XrFaceTrackerANDROID যা পূর্বে xrCreateFaceTrackerANDROID দ্বারা তৈরি করা হয়েছিল।
ফেস ট্র্যাকিং অভিজ্ঞতা শেষ হয়ে গেলে xrDestroyFaceTrackerANDROID ফাংশনটি faceTracker এবং অন্তর্নিহিত রিসোর্সগুলি প্রকাশ করে।
বৈধ ব্যবহার (অন্তর্নিহিত)
- xrDestroyFaceTrackerANDROID কল করার আগে
XR_ANDROID_face_trackingএক্সটেনশনটি সক্রিয় করতে হবে । -
faceTrackerঅবশ্যই একটি বৈধ XrFaceTrackerANDROID হ্যান্ডেল হতে হবে
থ্রেড সুরক্ষা
-
faceTrackerএবং যেকোনো চাইল্ড হ্যান্ডেলের অ্যাক্সেস অবশ্যই বাহ্যিকভাবে সিঙ্ক্রোনাইজ করা উচিত
রিটার্ন কোড
-
XR_SUCCESS
-
XR_ERROR_FUNCTION_UNSUPPORTED -
XR_ERROR_HANDLE_INVALID
মুখের ক্যালিব্রেশন পরীক্ষা করুন
xrGetFaceCalibrationStateANDROID ফাংশনটি নিম্নরূপ সংজ্ঞায়িত করা হয়েছে:
XrResult xrGetFaceCalibrationStateANDROID(
XrFaceTrackerANDROID faceTracker,
XrBool32* faceIsCalibratedOutput);
প্যারামিটার বর্ণনা
-
faceTrackerহল একটি XrFaceTrackerANDROID যা পূর্বে xrCreateFaceTrackerANDROID দ্বারা তৈরি করা হয়েছিল। -
faceIsCalibratedOutputনির্দেশ করে যে ফেস ট্র্যাকারটি ক্যালিব্রেট করা হয়েছে কিনা।
একটি অ্যাপ্লিকেশন xrGetFaceCalibrationStateANDROID ফাংশন ব্যবহার করে মুখের ক্যালিব্রেশন অবস্থা পরীক্ষা করতে পারে ।
যখন ট্র্যাকিং পরিষেবাটি এখনও শুরুর পর্যায়ে থাকে, তখন রানটাইম xrGetFaceCalibrationStateANDROID থেকে XR_ERROR_SERVICE_NOT_READY_ANDROID ফেরত পাঠাতে পারে যা নির্দেশ করে যে অ্যাপ্লিকেশনটি পরে পুনরায় চেষ্টা করতে পারে ।
যদি সিস্টেমটি ফেস ক্যালিব্রেশন সমর্থন না করে, তাহলে xrGetFaceCalibrationStateANDROID XR_ERROR_FEATURE_UNSUPPORTED প্রদান করবে। অন্যথায়, ফেস ক্যালিব্রেশন অবস্থা প্রতিফলিত করার জন্য faceIsCalibratedOutput XR_TRUE তে সেট করা হতে পারে।
বৈধ ব্যবহার (অন্তর্নিহিত)
- xrGetFaceCalibrationStateANDROID কল করার আগে
XR_ANDROID_face_trackingএক্সটেনশনটি সক্রিয় করতে হবে । -
faceTrackerঅবশ্যই একটি বৈধ XrFaceTrackerANDROID হ্যান্ডেল হতে হবে -
faceIsCalibratedOutputঅবশ্যই একটিXrBool32মানের নির্দেশক হতে হবে
রিটার্ন কোড
-
XR_SUCCESS -
XR_SESSION_LOSS_PENDING
-
XR_ERROR_FUNCTION_UNSUPPORTED -
XR_ERROR_VALIDATION_FAILURE -
XR_ERROR_RUNTIME_FAILURE -
XR_ERROR_HANDLE_INVALID -
XR_ERROR_INSTANCE_LOST -
XR_ERROR_SESSION_LOST -
XR_ERROR_OUT_OF_MEMORY -
XR_ERROR_LIMIT_REACHED -
XR_ERROR_SERVICE_NOT_READY_ANDROID
মুখের ভাব বুঝতে পারো
xrGetFaceStateANDROID ফাংশনটি একটি নির্দিষ্ট সময়ে মুখের ভাবের মিশ্র আকারগুলি ফেরত দেয়।
XrResult xrGetFaceStateANDROID(
XrFaceTrackerANDROID faceTracker,
const XrFaceStateGetInfoANDROID* getInfo,
XrFaceStateANDROID* faceStateOutput);
প্যারামিটার বর্ণনা
-
faceTrackerহল একটি XrFaceTrackerANDROID যা পূর্বে xrCreateFaceTrackerANDROID দ্বারা তৈরি করা হয়েছিল। -
getInfoহল XrFaceStateGetInfoANDROID- এর দিকে নির্দেশক যা মুখের ভাব প্রকাশের জন্য তথ্য বর্ণনা করে। -
faceStateOutputহল XrFaceStateANDROID-এর দিকে নির্দেশক যা ফেস ট্র্যাকিং অবস্থা এবং মুখের অভিব্যক্তি ফেরত পায়।
বৈধ ব্যবহার (অন্তর্নিহিত)
- xrGetFaceStateANDROID কল করার আগে
XR_ANDROID_face_trackingএক্সটেনশনটি সক্রিয় করতে হবে । -
faceTrackerঅবশ্যই একটি বৈধ XrFaceTrackerANDROID হ্যান্ডেল হতে হবে -
getInfoঅবশ্যই একটি বৈধ XrFaceStateGetInfoANDROID কাঠামোর নির্দেশক হতে হবে -
faceStateOutputঅবশ্যই একটি XrFaceStateANDROID কাঠামোর নির্দেশক হতে হবে
রিটার্ন কোড
-
XR_SUCCESS -
XR_SESSION_LOSS_PENDING
-
XR_ERROR_FUNCTION_UNSUPPORTED -
XR_ERROR_VALIDATION_FAILURE -
XR_ERROR_RUNTIME_FAILURE -
XR_ERROR_HANDLE_INVALID -
XR_ERROR_INSTANCE_LOST -
XR_ERROR_SESSION_LOST -
XR_ERROR_OUT_OF_MEMORY -
XR_ERROR_LIMIT_REACHED -
XR_ERROR_TIME_INVALID
XrFaceStateGetInfoANDROID কাঠামো মুখের ভাব সংগ্রহের জন্য তথ্য বর্ণনা করে।
typedef struct XrFaceStateGetInfoANDROID {
XrStructureType type;
void* next;
XrTime time;
} XrFaceStateGetInfoANDROID;
সদস্যদের বিবরণ
-
typeহল এই কাঠামোর XrStructureType । -
nextহলNULLঅথবা একটি স্ট্রাকচার চেইনের পরবর্তী স্ট্রাকচারের দিকে নির্দেশক। কোর OpenXR বা এই এক্সটেনশনে এই ধরনের কোনও স্ট্রাকচার সংজ্ঞায়িত করা হয়নি। -
timeহল একটিXrTimeযেখানে মুখের ভাবগুলি অনুরোধ করা হয়।
অ্যাপ্লিকেশনগুলিকে রেন্ডার করা ফ্রেমের জন্য পূর্বাভাসিত প্রদর্শন সময়ের সমান সময় অনুরোধ করা উচিত ।
বৈধ ব্যবহার (অন্তর্নিহিত)
- XrFaceStateGetInfoANDROID ব্যবহার করার আগে
XR_ANDROID_face_trackingএক্সটেনশনটি সক্রিয় করতে হবে । -
typeঅবশ্যইXR_TYPE_FACE_STATE_GET_INFO_ANDROIDহতে হবে -
nextঅবশ্যইNULLহতে হবে অথবা স্ট্রাকচার চেইনে পরবর্তী স্ট্রাকচারের জন্য একটি বৈধ পয়েন্টার হতে হবে।
XrFaceStateANDROID কাঠামো মুখ ট্র্যাকিং অবস্থা এবং মুখের অভিব্যক্তি প্রদান করে।
typedef struct XrFaceStateANDROID {
XrStructureType type;
void* next;
uint32_t parametersCapacityInput;
uint32_t parametersCountOutput;
float* parameters;
XrFaceTrackingStateANDROID faceTrackingState;
XrTime sampleTime;
XrBool32 isValid;
uint32_t regionConfidencesCapacityInput;
uint32_t regionConfidencesCountOutput;
float* regionConfidences;
} XrFaceStateANDROID;
সদস্যদের বিবরণ
-
typeহল এই কাঠামোর XrStructureType । -
nextহলNULLঅথবা একটি স্ট্রাকচার চেইনের পরবর্তী স্ট্রাকচারের দিকে নির্দেশক। কোর OpenXR বা এই এক্সটেনশনে এই ধরনের কোনও স্ট্রাকচার সংজ্ঞায়িত করা হয়নি। -
parametersCapacityInputহল একটিuint32_tযাparametersঅ্যারের ক্ষমতা বর্ণনা করে, অথবা প্রয়োজনীয় ক্ষমতা পুনরুদ্ধারের অনুরোধ নির্দেশ করার জন্য 0। -
parametersCountOutputহল একটিuint32_tparametersসংখ্যা, অথবাparametersCapacityInputঅপর্যাপ্ত হলে প্রয়োজনীয় ক্ষমতা বর্ণনা করে। -
parametersহল অ্যাপ্লিকেশন-বরাদ্দকৃতfloatএকটি অ্যারের দিকে নির্দেশক যা মুখের অভিব্যক্তি মিশ্রিত আকারের ওজন দিয়ে পূর্ণ হবে। -
faceTrackingStateহল ফেস ট্র্যাকিংয়ের বৈধতার স্থিতিরXrFaceTrackingStateANDROID। -
sampleTimeহলো একটিXrTimeসময় যেখানে রিটার্ন করা এক্সপ্রেশনগুলি ট্র্যাক করা হয় বা এক্সট্রাপোলেট করা হয়। যদি সেই সময়ে এক্সট্রাপোলেশন সফল হয়, তাহলে এটি সেই সময়ের সমান যেখানে এক্সপ্রেশনের ওজন অনুরোধ করা হয়েছিল। -
isValidনির্দেশ করে যে ডেটাটি বৈধ কিনা, এমনকি যদি এটি বর্তমান ফ্রেম থেকে নাও হয়। -
regionConfidencesCapacityInputহল একটিuint32_tযাregionConfidencesঅ্যারের ক্ষমতা বর্ণনা করে, অথবা প্রয়োজনীয় ক্ষমতা পুনরুদ্ধারের অনুরোধ নির্দেশ করার জন্য 0। -
regionConfidencesCountOutputহল একটিuint32_tregionConfidencesএর সংখ্যা, অথবাregionConfidencesCapacityInputঅপর্যাপ্ত হলে প্রয়োজনীয় ক্ষমতা বর্ণনা করে। -
regionConfidencesহল অ্যাপ্লিকেশন-বরাদ্দকৃতfloatঅ্যারের একটি নির্দেশক যা প্রতিটি ফেসিয়াল অঞ্চলের জন্য আত্মবিশ্বাসের মান দিয়ে পূর্ণ হবে। - প্রয়োজনীয়
parametersএবংregionConfidencesআকার পুনরুদ্ধারের বিস্তারিত বিবরণের জন্য বাফার সাইজ প্যারামিটার বিভাগটি দেখুন।
অ্যাপ্লিকেশনটি XrFaceParameterIndicesANDROID দ্বারা সূচীকৃত মুখের অভিব্যক্তি পেতে parametersCapacityInput XR_FACE_PARAMETER_COUNT_ANDROID এ সেট করতে পারে ।
ফিরে আসা parameters বর্তমান মুখের অভিব্যক্তির মিশ্র আকারের ওজনকে প্রতিনিধিত্ব করে।
parameters অ্যারে আপডেটগুলি এমনভাবে অর্ডার করা হবে যাতে অ্যাপ্লিকেশনটি সংশ্লিষ্ট মুখের অভিব্যক্তি enum (যেমন XrFaceParameterIndicesANDROID ) ব্যবহার করে উপাদানগুলিকে সূচী করতে পারে ।
বৈধ ব্যবহার (অন্তর্নিহিত)
- XrFaceStateANDROID ব্যবহার করার আগে
XR_ANDROID_face_trackingএক্সটেনশনটি সক্রিয় করতে হবে । -
typeঅবশ্যইXR_TYPE_FACE_STATE_ANDROIDহতে হবে -
nextঅবশ্যইNULLহতে হবে অথবা স্ট্রাকচার চেইনে পরবর্তী স্ট্রাকচারের জন্য একটি বৈধ পয়েন্টার হতে হবে। - যদি
parametersCapacityInput0, parametersparametersCapacityInput floatমানের একটি অ্যারের দিকে নির্দেশক হতে হবে । - যদি
regionConfidencesCapacityInput0, regionConfidencesঅবশ্যইregionConfidencesCapacityInput floatমানের একটি অ্যারের দিকে নির্দেশক হতে হবে। -
faceTrackingStateঅবশ্যই একটি বৈধ XrFaceTrackingStateANDROID মান হতে হবে
XrFaceTrackingStateANDROID গণনা ফেস ট্র্যাকারের বিভিন্ন অবস্থা চিহ্নিত করে।
typedef enum XrFaceTrackingStateANDROID {
XR_FACE_TRACKING_STATE_PAUSED_ANDROID = 0,
XR_FACE_TRACKING_STATE_STOPPED_ANDROID = 1,
XR_FACE_TRACKING_STATE_TRACKING_ANDROID = 2
} XrFaceTrackingStateANDROID;
এনামগুলির নিম্নলিখিত অর্থ রয়েছে:
এনাম | বিবরণ |
| ইঙ্গিত দেয় যে ফেস ট্র্যাকিং বন্ধ আছে কিন্তু ভবিষ্যতে আবার চালু করা হতে পারে। |
| ট্র্যাকিং বন্ধ হয়ে গেছে কিন্তু ক্লায়েন্টের এখনও একটি সক্রিয় ফেস ট্র্যাকার আছে। |
| মুখটি ট্র্যাক করা হয়েছে এবং এর ভঙ্গি বর্তমান। |
আত্মবিশ্বাস অঞ্চল
XR_ANDROID_face_tracking এক্সটেনশনটি তিনটি মুখমণ্ডলের অঞ্চলের জন্য আত্মবিশ্বাসের মানও প্রদান করে: বাম চোখ, ডান চোখ এবং নীচের মুখমণ্ডল। এই মানগুলি, 0 (অবিশ্বাস) থেকে 1 (সর্বোচ্চ আত্মবিশ্বাস) পর্যন্ত, প্রতিটি অঞ্চলের জন্য মুখমণ্ডল ট্র্যাকিংয়ের নির্ভুলতা নির্দেশ করে।
আপনি এই আত্মবিশ্বাসের মানগুলি ব্যবহার করে ধীরে ধীরে ব্লেন্ডশেপগুলি অক্ষম করতে পারেন অথবা সংশ্লিষ্ট ফেস অঞ্চলে ভিজ্যুয়াল ফিল্টার (যেমন ব্লারিং) প্রয়োগ করতে পারেন। একটি মৌলিক অন/অফ নিয়ন্ত্রণের জন্য, আমরা সংশ্লিষ্ট ফেস অঞ্চলে ব্লেন্ডশেপগুলি সম্পূর্ণরূপে নিষ্ক্রিয় করতে 0.3 এর থ্রেশহোল্ড ব্যবহার করার পরামর্শ দিই।
"মুখের নিচের অংশ" বলতে চোখের নিচের সবকিছু বোঝায়, যার মধ্যে মুখ, থুতনি, গাল এবং নাক অন্তর্ভুক্ত। চোখের অংশে চোখ এবং ভ্রু অংশ অন্তর্ভুক্ত।
নিম্নলিখিত টেবিলটি প্রতিটি কনফিডেন্স অঞ্চলের সাথে সম্পর্কিত ব্লেন্ডশেপগুলি বর্ণনা করে:
| আত্মবিশ্বাস অঞ্চল | ব্লেন্ডশেপস |
|---|---|
| নিম্ন মুখ | `XR_FACE_PARAMETER_INDICES_CHEEK_PUFF_L_ANDROID`, `XR_FACE_PARAMETER_INDICES_CHEEK_PUFF_R_ANDROID`, `XR_FACE_PARAMETER_INDICES_CHEEK_RAISER_L_ANDROID`, `XR_FACE_PARAMETER_INDICES_CHEEK_SUCK_L_ANDROID`, `XR_FACE_PARAMETER_INDICES_CHEEK_SUCK_R_ANDROID`, `XR_FACE_PARAMETER_INDICES_CHIN_RAISER_B_ANDROID`, `XR_FACE_PARAMETER_INDICES_CHIN_RAISER_T_ANDROID`, `XR_FACE_PARAMETER_INDICES_DIMPLER_L_ANDROID`, `XR_FACE_PARAMETER_INDICES_DIMPLER_R_ANDROID`, `XR_FACE_PARAMETER_INDICES_JAW_DROP_ANDROID`, `XR_FACE_PARAMETER_INDICES_JAW_SIDEWAYS_LEFT_ANDROID`, `XR_FACE_PARAMETER_INDICES_JAW_SIDEWAYS_RIGHT_ANDROID`, `XR_FACE_PARAMETER_INDICES_JAW_THRUST_ANDROID`, `XR_FACE_PARAMETER_INDICES_LIP_CORNER_DEPRESSOR_L_ANDROID`, `XR_FACE_PARAMETER_INDICES_LIP_CORNER_DEPRESSOR_R_ANDROID`, `XR_FACE_PARAMETER_INDICES_LIP_CORNER_PULLER_L_ANDROID`, `XR_FACE_PARAMETER_INDICES_LIP_CORNER_PULLER_R_ANDROID`, `XR_FACE_PARAMETER_INDICES_LIP_FUNNELER_LB_ANDROID`, `XR_FACE_PARAMETER_INDICES_LIP_FUNNELER_LT_ANDROID`, `XR_FACE_PARAMETER_INDICES_LIP_FUNNELER_RB_ANDROID`, `XR_FACE_PARAMETER_INDICES_LIP_FUNNELER_RT_ANDROID`, `XR_FACE_PARAMETER_INDICES_LIP_PRESSOR_L_ANDROID`, `XR_FACE_PARAMETER_INDICES_LIP_PRESSOR_R_ANDROID`, `XR_FACE_PARAMETER_INDICES_LIP_PUCKER_L_ANDROID`, `XR_FACE_PARAMETER_INDICES_LIP_PUCKER_R_ANDROID`, `XR_FACE_PARAMETER_INDICES_LIP_STRETCHER_L_ANDROID`, `XR_FACE_PARAMETER_INDICES_LIP_SUCK_LB_ANDROID`, `XR_FACE_PARAMETER_INDICES_LIP_SUCK_LT_ANDROID`, `XR_FACE_PARAMETER_INDICES_LIP_SUCK_RB_ANDROID`, `XR_FACE_PARAMETER_INDICES_LIP_SUCK_RT_ANDROID`, `XR_FACE_PARAMETER_INDICES_LIP_TIGHTENER_L_ANDROID`, `XR_FACE_PARAMETER_INDICES_LIP_TIGHTENER_R_ANDROID`, `XR_FACE_PARAMETER_INDICES_LIPS_TOWARD_ANDROID`, `XR_FACE_PARAMETER_INDICES_LOWER_LIP_DEPRESSOR_L_ANDROID`, `XR_FACE_PARAMETER_INDICES_MOUTH_LEFT_ANDROID`, `XR_FACE_PARAMETER_INDICES_MOUTH_ANDROID`, `XR_FACE_PARAMETER_INDICES_MOUTH_RIGHT_ANDROID`, `XR_FACE_PARAMETER_INDICES_NOSE_WRINKLER_L_ANDROID`, `XR_FACE_PARAMETER_INDICES_NOSE_WRINKLER_R_ANDROID`, `XR_FACE_PARAMETER_INDICES_UPPER_LID_RAISER_L_ANDROID`, `XR_FACE_PARAMETER_INDICES_UPPER_LIP_RAISER_L_ANDROID`, `XR_FACE_PARAMETER_INDICES_UPPER_LIP_RAISER_R_ANDROID`, `XR_FACE_PARAMETER_INDICES_TONGUE_OUT_ANDROID`, `XR_FACE_PARAMETER_INDICES_TONGUE_LEFT_ANDROID`, `XR_FACE_PARAMETER_INDICES_TONGUE_RIGHT_ANDROID`, `XR_FACE_PARAMETER_INDICES_TONGUE_UP_ANDROID`, `XR_FACE_PARAMETER_INDICES_TONGUE_DOWN_ANDROID` |
| বাম/ডান উপরের মুখ | `XR_FACE_PARAMETER_INDICES_BROW_LOWERER_L_ANDROID`, `XR_FACE_PARAMETER_INDICES_BROW_LOWERER_R_ANDROID`, `XR_FACE_PARAMETER_INDICES_EYES_CLOSED_L_ANDROID`, `XR_FACE_PARAMETER_INDICES_EYES_LOOK_DOWN_L_ANDROID`, `XR_FACE_PARAMETER_INDICES_EYES_LOOK_DOWN_R_ANDROID`, `XR_FACE_PARAMETER_INDICES_EYES_LOOK_LOOK_Android`, `XR_FACE_PARAMETER_INDICES_EYES_LOOK_L_ANDROID`, `XR_FACE_PARAMETER_INDICES_EYES_LOOK_LFT_R_ANDROID`, `XR_FACE_PARAMETER_INDICES_EYES_LOOK_RIGHT_L_ANDROID`, `XR_FACE_PARAMETER_INDICES_EYES_LOOK_RIGHT_R_ANDROID`, `XR_FACE_PARAMETER_INDICES_EYES_LOOK_UP_L_ANDROID`, `XR_FACE_PARAMETER_INDICES_INNER_BROW_RAISER_L_ANDROID`, `XR_FACE_PARAMETER_INDICES_INNER_BROW_RAISER_R_ANDROID`, `XR_FACE_PARAMETER_INDICES_IDID_LID_TIGHTENER_L_ANDROID`, `XR_FACE_PARAMETER_INDICES_LID_TIGHTENER_R_ANDROID`, `XR_FACE_PARAMETER_INDICES_OUTER_BROW_RAISER_L_ANDROID`, `XR_FACE_PARAMETER_INDICES_OUTER_BROW_RAISER_R_ANDROID` |
মিশ্র আকারের প্রচলিত ধরণ
এই এক্সটেনশনটি XR_FACE_PARAMETER_COUNT_ANDROID এর মাধ্যমে ৬৮টি ব্লেন্ড শেপ সংজ্ঞায়িত করে, হ্রাসকৃত G-Nome ফর্ম্যাটের জন্য। এই enum-এর প্রতিটি প্যারামিটার হল একটি ব্লেন্ড শেপ অ্যারের একটি সূচক যার মান হল float টাইপ এবং রানটাইম 1 - 0-এ স্বাভাবিক হয়।
typedef enum XrFaceParameterIndicesANDROID {
XR_FACE_PARAMETER_INDICES_BROW_LOWERER_L_ANDROID = 0,
XR_FACE_PARAMETER_INDICES_BROW_LOWERER_R_ANDROID = 1,
XR_FACE_PARAMETER_INDICES_CHEEK_PUFF_L_ANDROID = 2,
XR_FACE_PARAMETER_INDICES_CHEEK_PUFF_R_ANDROID = 3,
XR_FACE_PARAMETER_INDICES_CHEEK_RAISER_L_ANDROID = 4,
XR_FACE_PARAMETER_INDICES_CHEEK_RAISER_R_ANDROID = 5,
XR_FACE_PARAMETER_INDICES_CHEEK_SUCK_L_ANDROID = 6,
XR_FACE_PARAMETER_INDICES_CHEEK_SUCK_R_ANDROID = 7,
XR_FACE_PARAMETER_INDICES_CHIN_RAISER_B_ANDROID = 8,
XR_FACE_PARAMETER_INDICES_CHIN_RAISER_T_ANDROID = 9,
XR_FACE_PARAMETER_INDICES_DIMPLER_L_ANDROID = 10,
XR_FACE_PARAMETER_INDICES_DIMPLER_R_ANDROID = 11,
XR_FACE_PARAMETER_INDICES_EYES_CLOSED_L_ANDROID = 12,
XR_FACE_PARAMETER_INDICES_EYES_CLOSED_R_ANDROID = 13,
XR_FACE_PARAMETER_INDICES_EYES_LOOK_DOWN_L_ANDROID = 14,
XR_FACE_PARAMETER_INDICES_EYES_LOOK_DOWN_R_ANDROID = 15,
XR_FACE_PARAMETER_INDICES_EYES_LOOK_LEFT_L_ANDROID = 16,
XR_FACE_PARAMETER_INDICES_EYES_LOOK_LEFT_R_ANDROID = 17,
XR_FACE_PARAMETER_INDICES_EYES_LOOK_RIGHT_L_ANDROID = 18,
XR_FACE_PARAMETER_INDICES_EYES_LOOK_RIGHT_R_ANDROID = 19,
XR_FACE_PARAMETER_INDICES_EYES_LOOK_UP_L_ANDROID = 20,
XR_FACE_PARAMETER_INDICES_EYES_LOOK_UP_R_ANDROID = 21,
XR_FACE_PARAMETER_INDICES_INNER_BROW_RAISER_L_ANDROID = 22,
XR_FACE_PARAMETER_INDICES_INNER_BROW_RAISER_R_ANDROID = 23,
XR_FACE_PARAMETER_INDICES_JAW_DROP_ANDROID = 24,
XR_FACE_PARAMETER_INDICES_JAW_SIDEWAYS_LEFT_ANDROID = 25,
XR_FACE_PARAMETER_INDICES_JAW_SIDEWAYS_RIGHT_ANDROID = 26,
XR_FACE_PARAMETER_INDICES_JAW_THRUST_ANDROID = 27,
XR_FACE_PARAMETER_INDICES_LID_TIGHTENER_L_ANDROID = 28,
XR_FACE_PARAMETER_INDICES_LID_TIGHTENER_R_ANDROID = 29,
XR_FACE_PARAMETER_INDICES_LIP_CORNER_DEPRESSOR_L_ANDROID = 30,
XR_FACE_PARAMETER_INDICES_LIP_CORNER_DEPRESSOR_R_ANDROID = 31,
XR_FACE_PARAMETER_INDICES_LIP_CORNER_PULLER_L_ANDROID = 32,
XR_FACE_PARAMETER_INDICES_LIP_CORNER_PULLER_R_ANDROID = 33,
XR_FACE_PARAMETER_INDICES_LIP_FUNNELER_LB_ANDROID = 34,
XR_FACE_PARAMETER_INDICES_LIP_FUNNELER_LT_ANDROID = 35,
XR_FACE_PARAMETER_INDICES_LIP_FUNNELER_RB_ANDROID = 36,
XR_FACE_PARAMETER_INDICES_LIP_FUNNELER_RT_ANDROID = 37,
XR_FACE_PARAMETER_INDICES_LIP_PRESSOR_L_ANDROID = 38,
XR_FACE_PARAMETER_INDICES_LIP_PRESSOR_R_ANDROID = 39,
XR_FACE_PARAMETER_INDICES_LIP_PUCKER_L_ANDROID = 40,
XR_FACE_PARAMETER_INDICES_LIP_PUCKER_R_ANDROID = 41,
XR_FACE_PARAMETER_INDICES_LIP_STRETCHER_L_ANDROID = 42,
XR_FACE_PARAMETER_INDICES_LIP_STRETCHER_R_ANDROID = 43,
XR_FACE_PARAMETER_INDICES_LIP_SUCK_LB_ANDROID = 44,
XR_FACE_PARAMETER_INDICES_LIP_SUCK_LT_ANDROID = 45,
XR_FACE_PARAMETER_INDICES_LIP_SUCK_RB_ANDROID = 46,
XR_FACE_PARAMETER_INDICES_LIP_SUCK_RT_ANDROID = 47,
XR_FACE_PARAMETER_INDICES_LIP_TIGHTENER_L_ANDROID = 48,
XR_FACE_PARAMETER_INDICES_LIP_TIGHTENER_R_ANDROID = 49,
XR_FACE_PARAMETER_INDICES_LIPS_TOWARD_ANDROID = 50,
XR_FACE_PARAMETER_INDICES_LOWER_LIP_DEPRESSOR_L_ANDROID = 51,
XR_FACE_PARAMETER_INDICES_LOWER_LIP_DEPRESSOR_R_ANDROID = 52,
XR_FACE_PARAMETER_INDICES_MOUTH_LEFT_ANDROID = 53,
XR_FACE_PARAMETER_INDICES_MOUTH_RIGHT_ANDROID = 54,
XR_FACE_PARAMETER_INDICES_NOSE_WRINKLER_L_ANDROID = 55,
XR_FACE_PARAMETER_INDICES_NOSE_WRINKLER_R_ANDROID = 56,
XR_FACE_PARAMETER_INDICES_OUTER_BROW_RAISER_L_ANDROID = 57,
XR_FACE_PARAMETER_INDICES_OUTER_BROW_RAISER_R_ANDROID = 58,
XR_FACE_PARAMETER_INDICES_UPPER_LID_RAISER_L_ANDROID = 59,
XR_FACE_PARAMETER_INDICES_UPPER_LID_RAISER_R_ANDROID = 60,
XR_FACE_PARAMETER_INDICES_UPPER_LIP_RAISER_L_ANDROID = 61,
XR_FACE_PARAMETER_INDICES_UPPER_LIP_RAISER_R_ANDROID = 62,
XR_FACE_PARAMETER_INDICES_TONGUE_OUT_ANDROID = 63,
XR_FACE_PARAMETER_INDICES_TONGUE_LEFT_ANDROID = 64,
XR_FACE_PARAMETER_INDICES_TONGUE_RIGHT_ANDROID = 65,
XR_FACE_PARAMETER_INDICES_TONGUE_UP_ANDROID = 66,
XR_FACE_PARAMETER_INDICES_TONGUE_DOWN_ANDROID = 67
} XrFaceParameterIndicesANDROID;
| সূচক | নাম | রেফারেন্স ছবি | |
|---|---|---|---|
| 0 | ব্রো_লোয়ার_এল | ![]() | ![]() |
| ১ | ব্রো_লোয়ার_আর | ![]() | ![]() |
| ২ | গাল_পাফ_এল | ![]() | ![]() |
| ৩ | গাল_পাফ_আর | ![]() | ![]() |
| ৪ | চিক_রাইজার_এল | ![]() | ![]() |
| ৫ | চিক_রাইজার_আর | ![]() | ![]() |
| ৬ | গাল চুষা_এল | ![]() | ![]() |
| ৭ | গাল চুষা_আর | ![]() | ![]() |
| ৮ | চিন_রাইজার_বি | ![]() | ![]() |
| ৯ | চিন_রাইজার_টি | ![]() | ![]() |
| ১০ | ডিম্পলার_এল | ![]() | ![]() |
| ১১ | ডিম্পলার_আর | ![]() | ![]() |
| ১২ | চোখ_বন্ধ_এল | ![]() | ![]() |
| ১৩ | চোখ_বন্ধ_আর | ![]() | ![]() |
| ১৪ | চোখ_দেখুন_নীচে_এল | ![]() | ![]() |
| ১৫ | চোখ_দেখো_নীচে_আর | ![]() | ![]() |
| ১৬ | চোখ_বাম_দিকে_দেখো | ![]() | ![]() |
| ১৭ | চোখ_বাম_দেখা | ![]() | ![]() |
| ১৮ | চোখ_ডান_দিকে_দেখো | ![]() | ![]() |
| ১৯ | চোখ_ডান_দেখো | ![]() | ![]() |
| ২০ | চোখ_উপর_দেখো | ![]() | ![]() |
| ২১ | চোখ_দেখো_উপর_আর | ![]() | ![]() |
| ২২ | ভিতরের_ব্রো_রাইজার_এল | ![]() | ![]() |
| ২৩ | ভিতরের_ব্রো_রাইজার_আর | ![]() | ![]() |
| ২৪ | জ্যাড_ড্রপ | ![]() | ![]() |
| ২৫ | চোয়াল_পাশ_বাম | ![]() | ![]() |
| ২৬ | চোয়ালের পাশের ডান দিক | ![]() | ![]() |
| ২৭ | চোয়ালের থ্রুস্ট | ![]() | ![]() |
| ২৮ | ঢাকনা_টাইটনার_এল | ![]() | ![]() |
| ২৯ | ঢাকনা_টাইটনার_আর | ![]() | ![]() |
| ৩০ | লিপ_কর্নার_ডিপ্রেসর_এল | ![]() | ![]() |
| ৩১ | লিপ_কর্নার_ডিপ্রেসর_আর | ![]() | ![]() |
| ৩২ | ঠোঁট_কর্নার_পালার_এল | ![]() | ![]() |
| ৩৩ | লিপ_কর্নার_পালার_আর | ![]() | ![]() |
| ৩৪ | লিপ_ফানেলার_এলবি | ![]() | ![]() |
| ৩৫ | লিপ_ফানেলার_এলটি | ![]() | ![]() |
| ৩৬ | লিপ_ফানেলার_আরবি | ![]() | ![]() |
| ৩৭ | লিপ_ফানেলার_আরটি | ![]() | ![]() |
| ৩৮ | লিপ_প্রেসর_এল | ![]() | ![]() |
| ৩৯ | লিপ_প্রেসর_আর | ![]() | ![]() |
| ৪০ | লিপ_পাকার_এল | ![]() | ![]() |
| ৪১ | লিপ_পাকার_আর | ![]() | ![]() |
| ৪২ | লিপ_স্ট্রেচার_এল | ![]() | ![]() |
| ৪৩ | লিপ_স্ট্রেচার_আর | ![]() | ![]() |
| ৪৪ | লিপ_সাক_এলবি | ![]() | ![]() |
| ৪৫ | লিপ_সাক_এলটি | ![]() | ![]() |
| ৪৬ | লিপ_সাক_আরবি | ![]() | ![]() |
| ৪৭ | লিপ_সাক_আরটি | ![]() | ![]() |
| ৪৮ | লিপ_টাইটনার_এল | ![]() | ![]() |
| ৪৯ | লিপ_টাইটনার_আর | ![]() | ![]() |
| ৫০ | লিপস_টাওয়ার্ড | ![]() | ![]() |
| ৫১ | নিম্ন_লিপ_ডিপ্রেসর_এল | ![]() | ![]() |
| ৫২ | লোয়ার_লিপ_ডিপ্রেসর_আর | ![]() | ![]() |
| ৫৩ | মুখ_বাম | ![]() | ![]() |
| ৫৪ | মুখের ডানদিকে | ![]() | ![]() |
| ৫৫ | নাক_কুঁচকানো_এল | ![]() | ![]() |
| ৫৬ | নাক_কুঁচকানো_আর | ![]() | ![]() |
| ৫৭ | বাইরের_ব্রো_রাইজার_এল | ![]() | ![]() |
| ৫৮ | বাইরের_ব্রো_রাইজার_আর | ![]() | ![]() |
| ৫৯ | উপরের_ঢাকনা_রাইজার_এল | ![]() | ![]() |
| ৬০ | উপরের_ঢাকনা_রাইজার_আর | ![]() | ![]() |
| ৬১ | আপপার_লিপ_রাইজার_এল | ![]() | ![]() |
| ৬২ | আপপার_লিপ_রাইজার_আর | ![]() | ![]() |
| ৬৩ | জিহ্বা বের করা | ![]() | ![]() |
| ৬৪ | জিহ্বা_বাম | ![]() | ![]() |
| ৬৫ | জিহ্বা_ডান | ![]() | ![]() |
| ৬৬ | জিহ্বা_উপরে | ![]() | ![]() |
| ৬৭ | জিহ্বা_ডাউন | ![]() | ![]() |
ফেস ট্র্যাকিংয়ের জন্য উদাহরণ কোড
নিচের উদাহরণ কোডটি দেখায় কিভাবে মুখের অভিব্যক্তি মিশ্রিত আকারের জন্য সমস্ত ওজন পেতে হয়।
XrInstance instance; // previously initialized
XrSystemId systemId; // previously initialized
XrSession session; // previously initialized, e.g. created at app startup.
// The function pointers are previously initialized using xrGetInstanceProcAddr.
PFN_xrCreateFaceTrackerANDROID xrCreateFaceTrackerANDROID; // previously initialized
PFN_xrDestroyFaceTrackerANDROID xrDestroyFaceTrackerANDROID; // previously initialized
PFN_xrGetFaceStateANDROID xrGetFaceStateANDROID; // previously initialized
PFN_xrGetFaceCalibrationStateANDROID xrGetFaceCalibrationStateANDROID; // previously initialized
// Inspect system capability
XrSystemProperties properties{XR_TYPE_SYSTEM_PROPERTIES};
XrSystemFaceTrackingPropertiesANDROID faceTrackingProperties{XR_TYPE_SYSTEM_FACE_TRACKING_PROPERTIES_ANDROID};
properties.next = &faceTrackingProperties;
CHK_XR(xrGetSystemProperties(instance, systemId, &properties));
if (!faceTrackingProperties.supportsFaceTracking) {
// face tracking is not supported.
return;
}
XrFaceTrackerANDROID faceTracker;
XrFaceTrackerCreateInfoANDROID
createInfo{.type = XR_TYPE_FACE_TRACKER_CREATE_INFO_ANDROID,
.next = nullptr};
CHK_XR(xrCreateFaceTrackerANDROID(session, &createInfo, &faceTracker));
// If the system supports face calibration:
XrBool32 isCalibrated;
CHK_XR(xrGetFaceCalibrationStateANDROID(faceTracker, &isCalibrated));
if (!isCalibrated) {
// Redirect the user to system calibration setting.
}
XrFaceStateANDROID faceState;
float faceExpressionParameters[XR_FACE_PARAMETER_COUNT_ANDROID];
faceState.type = XR_TYPE_FACE_STATE_ANDROID;
faceState.next = nullptr;
faceState.parametersCapacityInput = XR_FACE_PARAMETER_COUNT_ANDROID;
faceState.parameters = faceExpressionParameters;
float regionConfidences[XR_FACE_REGION_CONFIDENCE_COUNT_ANDROID];
faceState.regionConfidencesCapacityInput = XR_FACE_REGION_CONFIDENCE_COUNT_ANDROID;
faceState.regionConfidences = regionConfidences;
while (1) {
// ...
// For every frame in the frame loop
// ...
XrFrameState frameState; // previously returned from xrWaitFrame
XrFaceStateGetInfoANDROID faceGetInfo{
.type = XR_TYPE_FACE_STATE_GET_INFO_ANDROID,
.next = nullptr,
.time = frameState.predictedDisplayTime,
};
CHK_XR(xrGetFaceStateANDROID(faceTracker, &faceGetInfo, &faceState));
if (faceState.isValid) {
for (uint32_t i = 0; i < XR_FACE_PARAMETER_COUNT_ANDROID; ++i) {
// parameters[i] contains a weight of specific blend shape
}
for (uint32_t i = 0; i < XR_FACE_REGION_CONFIDENCE_COUNT_ANDROID; ++i) {
// regionConfidences[i] contains a confidence value of a specific region
}
}
}
// after usage
CHK_XR(xrDestroyFaceTrackerANDROID(faceTracker));
নতুন বস্তুর ধরণ
নতুন এনাম ধ্রুবক
-
XR_FACE_PARAMETER_COUNT_ANDROID
XrObjectType গণনাটি এর সাথে প্রসারিত করা হয়:
-
XR_OBJECT_TYPE_FACE_TRACKER_ANDROID
XrStructureType গণনাটি এর সাথে প্রসারিত করা হয়েছে:
-
XR_TYPE_FACE_TRACKER_CREATE_INFO_ANDROID -
XR_TYPE_FACE_STATE_GET_INFO_ANDROID -
XR_TYPE_FACE_STATE_ANDROID -
XR_TYPE_SYSTEM_FACE_TRACKING_PROPERTIES_ANDROID
নতুন এনাম
নতুন কাঠামো
- XrFaceTrackerCreateInfoANDROID সম্পর্কে
- XrFaceStateGetInfoANDROID সম্পর্কে
- XrFaceStateANDROID সম্পর্কে
- XrSystemFaceTrackingPropertiesANDROID সম্পর্কে
নতুন ফাংশন
- xrCreateFaceTrackerANDROID সম্পর্কে
- xrDestroyFaceTrackerANDROID সম্পর্কে
- xrGetFaceStateANDROID সম্পর্কে
- xrGetFaceCalibrationStateANDROID সম্পর্কে
ইস্যু
সংস্করণ ইতিহাস
- রিভিশন 1, 2024-09-05 (লেভানা চেন)
- প্রাথমিক এক্সটেনশনের বিবরণ
- সংশোধন ২, ২০২৫-০৪-০১ (কেনি ভার্কেমার)
- মুখের আত্মবিশ্বাসের অঞ্চল যোগ করা হয়েছে
- সংশোধন 3, 2025-06-04 (লেভানা চেন)
- নতুন ত্রুটি কোড যোগ করা হয়েছে।
OpenXR™ এবং OpenXR লোগো হল The Khronos Group Inc. এর মালিকানাধীন ট্রেডমার্ক এবং চীন, ইউরোপীয় ইউনিয়ন, জাপান এবং যুক্তরাজ্যে ট্রেডমার্ক হিসেবে নিবন্ধিত।





































































