public static Iscenefactory FromBaseObject(BaseObject baseObj)
                    {
                        if (baseObj == null || baseObj.NativeObject == IntPtr.Zero)
                        {
                            return(null);
                        }
                        Iscenefactory obj = baseObj as  Iscenefactory;

                        if (object.Equals(obj, null))
                        {
                            obj = new Iscenefactory(CreatedWhenConstruct.CWC_NotToCreate);
                            obj.BindNativeObject(baseObj.NativeObject, "ISceneFactory");
                            obj.IncreaseCast();
                        }

                        return(obj);
                    }
                    public BaseObject Create()
                    {
                        Iscenefactory emptyInstance = new Iscenefactory(CreatedWhenConstruct.CWC_NotToCreate);

                        return(emptyInstance);
                    }