细节调整
This commit is contained in:
		
							parent
							
								
									b5e6650566
								
							
						
					
					
						commit
						2528e41a58
					
				|  | @ -26,7 +26,7 @@ void e2d::Animate::setAnimation(Animation * animation) | ||||||
| { | { | ||||||
| 	if (animation && animation != _animation) | 	if (animation && animation != _animation) | ||||||
| 	{ | 	{ | ||||||
| 		SafeRelease(&_animation); | 		SafeRelease(_animation); | ||||||
| 		_animation = animation; | 		_animation = animation; | ||||||
| 		_animation->retain(); | 		_animation->retain(); | ||||||
| 	} | 	} | ||||||
|  | @ -90,7 +90,7 @@ void e2d::Animate::reset() | ||||||
| void e2d::Animate::onDestroy() | void e2d::Animate::onDestroy() | ||||||
| { | { | ||||||
| 	Action::onDestroy(); | 	Action::onDestroy(); | ||||||
| 	SafeRelease(&_animation); | 	SafeRelease(_animation); | ||||||
| } | } | ||||||
| 
 | 
 | ||||||
| e2d::Animate * e2d::Animate::clone() const | e2d::Animate * e2d::Animate::clone() const | ||||||
|  |  | ||||||
|  | @ -81,7 +81,7 @@ void e2d::Loop::reset() | ||||||
| void e2d::Loop::onDestroy() | void e2d::Loop::onDestroy() | ||||||
| { | { | ||||||
| 	Action::onDestroy(); | 	Action::onDestroy(); | ||||||
| 	SafeRelease(&_action); | 	SafeRelease(_action); | ||||||
| } | } | ||||||
| 
 | 
 | ||||||
| void e2d::Loop::_resetTime() | void e2d::Loop::_resetTime() | ||||||
|  |  | ||||||
|  | @ -35,7 +35,7 @@ void e2d::Sequence::onDestroy() | ||||||
| 	Action::onDestroy(); | 	Action::onDestroy(); | ||||||
| 	for (auto action : _actions) | 	for (auto action : _actions) | ||||||
| 	{ | 	{ | ||||||
| 		SafeRelease(&action); | 		SafeRelease(action); | ||||||
| 	} | 	} | ||||||
| } | } | ||||||
| 
 | 
 | ||||||
|  |  | ||||||
|  | @ -32,7 +32,7 @@ void e2d::Spawn::onDestroy() | ||||||
| 	Action::onDestroy(); | 	Action::onDestroy(); | ||||||
| 	for (auto action : _actions) | 	for (auto action : _actions) | ||||||
| 	{ | 	{ | ||||||
| 		SafeRelease(&action); | 		SafeRelease(action); | ||||||
| 	} | 	} | ||||||
| } | } | ||||||
| 
 | 
 | ||||||
|  |  | ||||||
|  | @ -89,9 +89,9 @@ void Input::__uninit() | ||||||
| 	if (s_MouseDevice) | 	if (s_MouseDevice) | ||||||
| 		s_MouseDevice->Unacquire(); | 		s_MouseDevice->Unacquire(); | ||||||
| 
 | 
 | ||||||
| 	SafeReleaseInterface(&s_MouseDevice); | 	SafeReleaseInterface(s_MouseDevice); | ||||||
| 	SafeReleaseInterface(&s_KeyboardDevice); | 	SafeReleaseInterface(s_KeyboardDevice); | ||||||
| 	SafeReleaseInterface(&s_pDirectInput); | 	SafeReleaseInterface(s_pDirectInput); | ||||||
| } | } | ||||||
| 
 | 
 | ||||||
| void e2d::Input::__update() | void e2d::Input::__update() | ||||||
|  |  | ||||||
|  | @ -133,20 +133,20 @@ bool e2d::Renderer::__createDeviceResources() | ||||||
| 
 | 
 | ||||||
| void e2d::Renderer::__discardDeviceResources() | void e2d::Renderer::__discardDeviceResources() | ||||||
| { | { | ||||||
| 	SafeReleaseInterface(&s_pRenderTarget); | 	SafeReleaseInterface(s_pRenderTarget); | ||||||
| 	SafeReleaseInterface(&s_pSolidBrush); | 	SafeReleaseInterface(s_pSolidBrush); | ||||||
| 	SafeReleaseInterface(&s_pTextRenderer); | 	SafeReleaseInterface(s_pTextRenderer); | ||||||
| } | } | ||||||
| 
 | 
 | ||||||
| void e2d::Renderer::__discardResources() | void e2d::Renderer::__discardResources() | ||||||
| { | { | ||||||
| 	SafeReleaseInterface(&s_pTextFormat); | 	SafeReleaseInterface(s_pTextFormat); | ||||||
| 	SafeReleaseInterface(&s_pDirect2dFactory); | 	SafeReleaseInterface(s_pDirect2dFactory); | ||||||
| 	SafeReleaseInterface(&s_pRenderTarget); | 	SafeReleaseInterface(s_pRenderTarget); | ||||||
| 	SafeReleaseInterface(&s_pSolidBrush); | 	SafeReleaseInterface(s_pSolidBrush); | ||||||
| 	SafeReleaseInterface(&s_pTextRenderer); | 	SafeReleaseInterface(s_pTextRenderer); | ||||||
| 	SafeReleaseInterface(&s_pIWICFactory); | 	SafeReleaseInterface(s_pIWICFactory); | ||||||
| 	SafeReleaseInterface(&s_pDWriteFactory); | 	SafeReleaseInterface(s_pDWriteFactory); | ||||||
| } | } | ||||||
| 
 | 
 | ||||||
| void e2d::Renderer::__render() | void e2d::Renderer::__render() | ||||||
|  | @ -206,7 +206,7 @@ void e2d::Renderer::__render() | ||||||
| 
 | 
 | ||||||
| 			pTextLayout->Draw(NULL, s_pTextRenderer, 10, 0); | 			pTextLayout->Draw(NULL, s_pTextRenderer, 10, 0); | ||||||
| 
 | 
 | ||||||
| 			SafeReleaseInterface(&pTextLayout); | 			SafeReleaseInterface(pTextLayout); | ||||||
| 		} | 		} | ||||||
| 	} | 	} | ||||||
| 
 | 
 | ||||||
|  |  | ||||||
|  | @ -14,7 +14,7 @@ e2d::Collider::Collider() | ||||||
| 
 | 
 | ||||||
| e2d::Collider::~Collider() | e2d::Collider::~Collider() | ||||||
| { | { | ||||||
| 	SafeReleaseInterface(&_transformed); | 	SafeReleaseInterface(_transformed); | ||||||
| } | } | ||||||
| 
 | 
 | ||||||
| e2d::Node * e2d::Collider::getParentNode() const | e2d::Node * e2d::Collider::getParentNode() const | ||||||
|  | @ -90,7 +90,7 @@ void e2d::Collider::_transform() | ||||||
| 		} | 		} | ||||||
| 
 | 
 | ||||||
| 		// 释放原碰撞体
 | 		// 释放原碰撞体
 | ||||||
| 		SafeReleaseInterface(&_transformed); | 		SafeReleaseInterface(_transformed); | ||||||
| 
 | 
 | ||||||
| 		// 根据父节点转换几何图形
 | 		// 根据父节点转换几何图形
 | ||||||
| 		Renderer::getID2D1Factory()->CreateTransformedGeometry( | 		Renderer::getID2D1Factory()->CreateTransformedGeometry( | ||||||
|  |  | ||||||
|  | @ -27,12 +27,12 @@ e2d::ColliderCircle::ColliderCircle(Node * node) | ||||||
| 
 | 
 | ||||||
| e2d::ColliderCircle::~ColliderCircle() | e2d::ColliderCircle::~ColliderCircle() | ||||||
| { | { | ||||||
| 	SafeReleaseInterface(&_d2dCircle); | 	SafeReleaseInterface(_d2dCircle); | ||||||
| } | } | ||||||
| 
 | 
 | ||||||
| void e2d::ColliderCircle::setCircle(Point center, double radius) | void e2d::ColliderCircle::setCircle(Point center, double radius) | ||||||
| { | { | ||||||
| 	SafeReleaseInterface(&_d2dCircle); | 	SafeReleaseInterface(_d2dCircle); | ||||||
| 
 | 
 | ||||||
| 	Renderer::getID2D1Factory()->CreateEllipseGeometry( | 	Renderer::getID2D1Factory()->CreateEllipseGeometry( | ||||||
| 		D2D1::Ellipse( | 		D2D1::Ellipse( | ||||||
|  |  | ||||||
|  | @ -27,12 +27,12 @@ e2d::ColliderEllipse::ColliderEllipse(Node * node) | ||||||
| 
 | 
 | ||||||
| e2d::ColliderEllipse::~ColliderEllipse() | e2d::ColliderEllipse::~ColliderEllipse() | ||||||
| { | { | ||||||
| 	SafeReleaseInterface(&_d2dEllipse); | 	SafeReleaseInterface(_d2dEllipse); | ||||||
| } | } | ||||||
| 
 | 
 | ||||||
| void e2d::ColliderEllipse::setEllipse(Point center, double radiusX, double radiusY) | void e2d::ColliderEllipse::setEllipse(Point center, double radiusX, double radiusY) | ||||||
| { | { | ||||||
| 	SafeReleaseInterface(&_d2dEllipse); | 	SafeReleaseInterface(_d2dEllipse); | ||||||
| 
 | 
 | ||||||
| 	Renderer::getID2D1Factory()->CreateEllipseGeometry( | 	Renderer::getID2D1Factory()->CreateEllipseGeometry( | ||||||
| 		D2D1::Ellipse( | 		D2D1::Ellipse( | ||||||
|  |  | ||||||
|  | @ -20,12 +20,12 @@ e2d::ColliderRect::ColliderRect(Node * node) | ||||||
| 
 | 
 | ||||||
| e2d::ColliderRect::~ColliderRect() | e2d::ColliderRect::~ColliderRect() | ||||||
| { | { | ||||||
| 	SafeReleaseInterface(&_d2dRectangle); | 	SafeReleaseInterface(_d2dRectangle); | ||||||
| } | } | ||||||
| 
 | 
 | ||||||
| void e2d::ColliderRect::setRect(double left, double top, double right, double bottom) | void e2d::ColliderRect::setRect(double left, double top, double right, double bottom) | ||||||
| { | { | ||||||
| 	SafeReleaseInterface(&_d2dRectangle); | 	SafeReleaseInterface(_d2dRectangle); | ||||||
| 
 | 
 | ||||||
| 	Renderer::getID2D1Factory()->CreateRectangleGeometry( | 	Renderer::getID2D1Factory()->CreateRectangleGeometry( | ||||||
| 		D2D1::RectF( | 		D2D1::RectF( | ||||||
|  |  | ||||||
|  | @ -35,7 +35,7 @@ void e2d::Animation::onDestroy() | ||||||
| { | { | ||||||
| 	for (auto frame : _frames) | 	for (auto frame : _frames) | ||||||
| 	{ | 	{ | ||||||
| 		SafeRelease(&frame); | 		SafeRelease(frame); | ||||||
| 	} | 	} | ||||||
| } | } | ||||||
| 
 | 
 | ||||||
|  |  | ||||||
|  | @ -227,10 +227,10 @@ bool e2d::Image::preload(const String& fileName) | ||||||
| 	} | 	} | ||||||
| 
 | 
 | ||||||
| 	// 释放相关资源
 | 	// 释放相关资源
 | ||||||
| 	SafeReleaseInterface(&pDecoder); | 	SafeReleaseInterface(pDecoder); | ||||||
| 	SafeReleaseInterface(&pSource); | 	SafeReleaseInterface(pSource); | ||||||
| 	SafeReleaseInterface(&pStream); | 	SafeReleaseInterface(pStream); | ||||||
| 	SafeReleaseInterface(&pConverter); | 	SafeReleaseInterface(pConverter); | ||||||
| 
 | 
 | ||||||
| 	return SUCCEEDED(hr); | 	return SUCCEEDED(hr); | ||||||
| } | } | ||||||
|  | @ -352,11 +352,11 @@ bool e2d::Image::preload(int resNameId, const String& resType) | ||||||
| 	} | 	} | ||||||
| 
 | 
 | ||||||
| 	// 释放相关资源
 | 	// 释放相关资源
 | ||||||
| 	SafeReleaseInterface(&pDecoder); | 	SafeReleaseInterface(pDecoder); | ||||||
| 	SafeReleaseInterface(&pSource); | 	SafeReleaseInterface(pSource); | ||||||
| 	SafeReleaseInterface(&pStream); | 	SafeReleaseInterface(pStream); | ||||||
| 	SafeReleaseInterface(&pConverter); | 	SafeReleaseInterface(pConverter); | ||||||
| 	SafeReleaseInterface(&pScaler); | 	SafeReleaseInterface(pScaler); | ||||||
| 
 | 
 | ||||||
| 	return SUCCEEDED(hr); | 	return SUCCEEDED(hr); | ||||||
| } | } | ||||||
|  | @ -366,13 +366,13 @@ void e2d::Image::clearCache() | ||||||
| { | { | ||||||
| 	for (auto bitmap : s_mBitmapsFromFile) | 	for (auto bitmap : s_mBitmapsFromFile) | ||||||
| 	{ | 	{ | ||||||
| 		SafeReleaseInterface(&bitmap.second); | 		SafeReleaseInterface(bitmap.second); | ||||||
| 	} | 	} | ||||||
| 	s_mBitmapsFromFile.clear(); | 	s_mBitmapsFromFile.clear(); | ||||||
| 
 | 
 | ||||||
| 	for (auto bitmap : s_mBitmapsFromResource) | 	for (auto bitmap : s_mBitmapsFromResource) | ||||||
| 	{ | 	{ | ||||||
| 		SafeReleaseInterface(&bitmap.second); | 		SafeReleaseInterface(bitmap.second); | ||||||
| 	} | 	} | ||||||
| 	s_mBitmapsFromResource.clear(); | 	s_mBitmapsFromResource.clear(); | ||||||
| } | } | ||||||
|  |  | ||||||
|  | @ -89,5 +89,5 @@ void e2d::Scene::showCollider(bool visiable) | ||||||
| 
 | 
 | ||||||
| void e2d::Scene::onDestroy() | void e2d::Scene::onDestroy() | ||||||
| { | { | ||||||
| 	SafeRelease(&_root); | 	SafeRelease(_root); | ||||||
| } | } | ||||||
|  |  | ||||||
|  | @ -25,9 +25,9 @@ CustomTextRenderer::CustomTextRenderer( | ||||||
| 
 | 
 | ||||||
| CustomTextRenderer::~CustomTextRenderer() | CustomTextRenderer::~CustomTextRenderer() | ||||||
| { | { | ||||||
| 	SafeReleaseInterface(&pD2DFactory_); | 	SafeReleaseInterface(pD2DFactory_); | ||||||
| 	SafeReleaseInterface(&pRT_); | 	SafeReleaseInterface(pRT_); | ||||||
| 	SafeReleaseInterface(&pBrush_); | 	SafeReleaseInterface(pBrush_); | ||||||
| } | } | ||||||
| 
 | 
 | ||||||
| STDMETHODIMP_(void) CustomTextRenderer::SetTextStyle( | STDMETHODIMP_(void) CustomTextRenderer::SetTextStyle( | ||||||
|  | @ -146,9 +146,9 @@ STDMETHODIMP CustomTextRenderer::DrawGlyphRun( | ||||||
| 		); | 		); | ||||||
| 	} | 	} | ||||||
| 
 | 
 | ||||||
| 	SafeReleaseInterface(&pPathGeometry); | 	SafeReleaseInterface(pPathGeometry); | ||||||
| 	SafeReleaseInterface(&pSink); | 	SafeReleaseInterface(pSink); | ||||||
| 	SafeReleaseInterface(&pTransformedGeometry); | 	SafeReleaseInterface(pTransformedGeometry); | ||||||
| 
 | 
 | ||||||
| 	return hr; | 	return hr; | ||||||
| } | } | ||||||
|  | @ -233,8 +233,8 @@ STDMETHODIMP CustomTextRenderer::DrawUnderline( | ||||||
| 		); | 		); | ||||||
| 	} | 	} | ||||||
| 
 | 
 | ||||||
| 	SafeReleaseInterface(&pRectangleGeometry); | 	SafeReleaseInterface(pRectangleGeometry); | ||||||
| 	SafeReleaseInterface(&pTransformedGeometry); | 	SafeReleaseInterface(pTransformedGeometry); | ||||||
| 
 | 
 | ||||||
| 	return S_OK; | 	return S_OK; | ||||||
| } | } | ||||||
|  | @ -319,8 +319,8 @@ STDMETHODIMP CustomTextRenderer::DrawStrikethrough( | ||||||
| 		); | 		); | ||||||
| 	} | 	} | ||||||
| 
 | 
 | ||||||
| 	SafeReleaseInterface(&pRectangleGeometry); | 	SafeReleaseInterface(pRectangleGeometry); | ||||||
| 	SafeReleaseInterface(&pTransformedGeometry); | 	SafeReleaseInterface(pTransformedGeometry); | ||||||
| 
 | 
 | ||||||
| 	return S_OK; | 	return S_OK; | ||||||
| } | } | ||||||
|  |  | ||||||
|  | @ -166,7 +166,7 @@ void e2d::ActionManager::__clearAllBindedWith(Node * target) | ||||||
| 			auto a = s_vRunningActions[i]; | 			auto a = s_vRunningActions[i]; | ||||||
| 			if (a->getTarget() == target) | 			if (a->getTarget() == target) | ||||||
| 			{ | 			{ | ||||||
| 				SafeRelease(&a); | 				SafeRelease(a); | ||||||
| 				s_vRunningActions.erase(s_vRunningActions.begin() + i); | 				s_vRunningActions.erase(s_vRunningActions.begin() + i); | ||||||
| 			} | 			} | ||||||
| 			else | 			else | ||||||
|  | @ -181,7 +181,7 @@ void e2d::ActionManager::__uninit() | ||||||
| { | { | ||||||
| 	for (auto action : s_vRunningActions) | 	for (auto action : s_vRunningActions) | ||||||
| 	{ | 	{ | ||||||
| 		SafeRelease(&action); | 		SafeRelease(action); | ||||||
| 	} | 	} | ||||||
| 	s_vActions.clear(); | 	s_vActions.clear(); | ||||||
| 	s_vRunningActions.clear(); | 	s_vRunningActions.clear(); | ||||||
|  |  | ||||||
|  | @ -246,7 +246,7 @@ void e2d::ColliderManager::__removeCollider(Collider * pCollider) | ||||||
| 		{ | 		{ | ||||||
| 			if (s_vColliders[i] == pCollider) | 			if (s_vColliders[i] == pCollider) | ||||||
| 			{ | 			{ | ||||||
| 				SafeRelease(&pCollider); | 				SafeRelease(pCollider); | ||||||
| 				s_vColliders.erase(s_vColliders.begin() + i); | 				s_vColliders.erase(s_vColliders.begin() + i); | ||||||
| 				return; | 				return; | ||||||
| 			} | 			} | ||||||
|  |  | ||||||
|  | @ -68,7 +68,7 @@ void e2d::SceneManager::clear() | ||||||
| 	while (s_SceneStack.size()) | 	while (s_SceneStack.size()) | ||||||
| 	{ | 	{ | ||||||
| 		auto temp = s_SceneStack.top(); | 		auto temp = s_SceneStack.top(); | ||||||
| 		SafeRelease(&temp); | 		SafeRelease(temp); | ||||||
| 		s_SceneStack.pop(); | 		s_SceneStack.pop(); | ||||||
| 	} | 	} | ||||||
| } | } | ||||||
|  | @ -127,7 +127,7 @@ void e2d::SceneManager::__update() | ||||||
| 		} | 		} | ||||||
| 		else | 		else | ||||||
| 		{ | 		{ | ||||||
| 			SafeRelease(&s_pCurrScene); | 			SafeRelease(s_pCurrScene); | ||||||
| 		} | 		} | ||||||
| 
 | 
 | ||||||
| 		// 执行下一场景的 onEnter 函数
 | 		// 执行下一场景的 onEnter 函数
 | ||||||
|  | @ -172,8 +172,8 @@ bool e2d::SceneManager::__init() | ||||||
| 
 | 
 | ||||||
| void e2d::SceneManager::__uninit() | void e2d::SceneManager::__uninit() | ||||||
| { | { | ||||||
| 	SafeRelease(&s_pCurrScene); | 	SafeRelease(s_pCurrScene); | ||||||
| 	SafeRelease(&s_pNextScene); | 	SafeRelease(s_pNextScene); | ||||||
| 	SafeRelease(&s_pTransition); | 	SafeRelease(s_pTransition); | ||||||
| 	SceneManager::clear(); | 	SceneManager::clear(); | ||||||
| } | } | ||||||
|  |  | ||||||
|  | @ -896,7 +896,7 @@ bool e2d::Node::isPointIn(Point point) const | ||||||
| 			&ret | 			&ret | ||||||
| 		); | 		); | ||||||
| 		// 删除临时创建的碰撞体
 | 		// 删除临时创建的碰撞体
 | ||||||
| 		SafeReleaseInterface(&rect); | 		SafeReleaseInterface(rect); | ||||||
| 	} | 	} | ||||||
| 
 | 
 | ||||||
| 	if (ret) | 	if (ret) | ||||||
|  | @ -950,9 +950,9 @@ bool e2d::Node::isIntersectWith(const Node * node) const | ||||||
| 			&relation | 			&relation | ||||||
| 		); | 		); | ||||||
| 		// 删除临时创建的碰撞体
 | 		// 删除临时创建的碰撞体
 | ||||||
| 		SafeReleaseInterface(&pRect1); | 		SafeReleaseInterface(pRect1); | ||||||
| 		SafeReleaseInterface(&pRect2); | 		SafeReleaseInterface(pRect2); | ||||||
| 		SafeReleaseInterface(&pCollider); | 		SafeReleaseInterface(pCollider); | ||||||
| 		if ((relation != D2D1_GEOMETRY_RELATION_UNKNOWN) && | 		if ((relation != D2D1_GEOMETRY_RELATION_UNKNOWN) && | ||||||
| 			(relation != D2D1_GEOMETRY_RELATION_DISJOINT)) | 			(relation != D2D1_GEOMETRY_RELATION_DISJOINT)) | ||||||
| 		{ | 		{ | ||||||
|  | @ -985,7 +985,7 @@ void e2d::Node::onDestroy() | ||||||
| 	ColliderManager::__removeCollider(_collider); | 	ColliderManager::__removeCollider(_collider); | ||||||
| 	for (auto child : _children) | 	for (auto child : _children) | ||||||
| 	{ | 	{ | ||||||
| 		SafeRelease(&child); | 		SafeRelease(child); | ||||||
| 	} | 	} | ||||||
| } | } | ||||||
| 
 | 
 | ||||||
|  |  | ||||||
|  | @ -46,7 +46,7 @@ bool e2d::Sprite::open(Image * image) | ||||||
| { | { | ||||||
| 	if (image) | 	if (image) | ||||||
| 	{ | 	{ | ||||||
| 		SafeRelease(&_image); | 		SafeRelease(_image); | ||||||
| 		_image = image; | 		_image = image; | ||||||
| 		_image->retain(); | 		_image->retain(); | ||||||
| 
 | 
 | ||||||
|  | @ -128,5 +128,5 @@ void e2d::Sprite::onRender() | ||||||
| void e2d::Sprite::onDestroy() | void e2d::Sprite::onDestroy() | ||||||
| { | { | ||||||
| 	Node::onDestroy(); | 	Node::onDestroy(); | ||||||
| 	SafeRelease(&_image); | 	SafeRelease(_image); | ||||||
| } | } | ||||||
|  |  | ||||||
|  | @ -76,8 +76,8 @@ e2d::Text::Text( | ||||||
| 
 | 
 | ||||||
| e2d::Text::~Text() | e2d::Text::~Text() | ||||||
| { | { | ||||||
| 	SafeReleaseInterface(&_textFormat); | 	SafeReleaseInterface(_textFormat); | ||||||
| 	SafeReleaseInterface(&_textLayout); | 	SafeReleaseInterface(_textLayout); | ||||||
| } | } | ||||||
| 
 | 
 | ||||||
| e2d::String e2d::Text::getText() const | e2d::String e2d::Text::getText() const | ||||||
|  | @ -313,7 +313,7 @@ void e2d::Text::_reset() | ||||||
| 
 | 
 | ||||||
| void e2d::Text::_createFormat() | void e2d::Text::_createFormat() | ||||||
| { | { | ||||||
| 	SafeReleaseInterface(&_textFormat); | 	SafeReleaseInterface(_textFormat); | ||||||
| 
 | 
 | ||||||
| 	HRESULT hr = Renderer::getIDWriteFactory()->CreateTextFormat( | 	HRESULT hr = Renderer::getIDWriteFactory()->CreateTextFormat( | ||||||
| 		_style.fontFamily, | 		_style.fontFamily, | ||||||
|  | @ -359,7 +359,7 @@ void e2d::Text::_createFormat() | ||||||
| 
 | 
 | ||||||
| void e2d::Text::_createLayout() | void e2d::Text::_createLayout() | ||||||
| { | { | ||||||
| 	SafeReleaseInterface(&_textLayout); | 	SafeReleaseInterface(_textLayout); | ||||||
| 
 | 
 | ||||||
| 	// 文本为空字符串时,重置属性
 | 	// 文本为空字符串时,重置属性
 | ||||||
| 	if (_text.isEmpty()) | 	if (_text.isEmpty()) | ||||||
|  | @ -410,7 +410,7 @@ void e2d::Text::_createLayout() | ||||||
| 			// 重设文本宽高
 | 			// 重设文本宽高
 | ||||||
| 			this->setSize(metrics.width, metrics.height); | 			this->setSize(metrics.width, metrics.height); | ||||||
| 			// 重新创建 layout
 | 			// 重新创建 layout
 | ||||||
| 			SafeReleaseInterface(&_textLayout); | 			SafeReleaseInterface(_textLayout); | ||||||
| 			hr = Renderer::getIDWriteFactory()->CreateTextLayout(_text, length, _textFormat, _width, 0, &_textLayout); | 			hr = Renderer::getIDWriteFactory()->CreateTextLayout(_text, length, _textFormat, _width, 0, &_textLayout); | ||||||
| 		} | 		} | ||||||
| 	} | 	} | ||||||
|  |  | ||||||
|  | @ -816,7 +816,7 @@ bool e2d::Music::__init() | ||||||
| 	if (FAILED(hr = s_pXAudio2->CreateMasteringVoice(&s_pMasteringVoice))) | 	if (FAILED(hr = s_pXAudio2->CreateMasteringVoice(&s_pMasteringVoice))) | ||||||
| 	{ | 	{ | ||||||
| 		WARN_IF(true, "Failed creating mastering voice"); | 		WARN_IF(true, "Failed creating mastering voice"); | ||||||
| 		e2d::SafeReleaseInterface(&s_pXAudio2); | 		e2d::SafeReleaseInterface(s_pXAudio2); | ||||||
| 		return false; | 		return false; | ||||||
| 	} | 	} | ||||||
| 
 | 
 | ||||||
|  | @ -838,5 +838,5 @@ void e2d::Music::__uninit() | ||||||
| 		s_pMasteringVoice->DestroyVoice(); | 		s_pMasteringVoice->DestroyVoice(); | ||||||
| 	} | 	} | ||||||
| 
 | 
 | ||||||
| 	e2d::SafeReleaseInterface(&s_pXAudio2); | 	e2d::SafeReleaseInterface(s_pXAudio2); | ||||||
| } | } | ||||||
|  |  | ||||||
|  | @ -18,8 +18,8 @@ e2d::Transition::Transition(double duration) | ||||||
| 
 | 
 | ||||||
| e2d::Transition::~Transition() | e2d::Transition::~Transition() | ||||||
| { | { | ||||||
| 	SafeReleaseInterface(&_outLayer); | 	SafeReleaseInterface(_outLayer); | ||||||
| 	SafeReleaseInterface(&_inLayer); | 	SafeReleaseInterface(_inLayer); | ||||||
| } | } | ||||||
| 
 | 
 | ||||||
| bool e2d::Transition::isDone() | bool e2d::Transition::isDone() | ||||||
|  | @ -29,8 +29,8 @@ bool e2d::Transition::isDone() | ||||||
| 
 | 
 | ||||||
| void e2d::Transition::onDestroy() | void e2d::Transition::onDestroy() | ||||||
| { | { | ||||||
| 	SafeRelease(&_outScene); | 	SafeRelease(_outScene); | ||||||
| 	SafeRelease(&_inScene); | 	SafeRelease(_inScene); | ||||||
| } | } | ||||||
| 
 | 
 | ||||||
| void e2d::Transition::_init(Scene * prev, Scene * next) | void e2d::Transition::_init(Scene * prev, Scene * next) | ||||||
|  |  | ||||||
|  | @ -866,12 +866,12 @@ protected: | ||||||
| 
 | 
 | ||||||
| 
 | 
 | ||||||
| template<typename Object> | template<typename Object> | ||||||
| inline void SafeRelease(Object** p)  | inline void SafeRelease(Object*& p)  | ||||||
| {  | {  | ||||||
| 	if (*p)  | 	if (p != nullptr) | ||||||
| 	{  | 	{  | ||||||
| 		(*p)->release();  | 		p->release();  | ||||||
| 		(*p) = nullptr;  | 		p = nullptr;  | ||||||
| 	} | 	} | ||||||
| } | } | ||||||
| 
 | 
 | ||||||
|  |  | ||||||
|  | @ -4,12 +4,12 @@ | ||||||
| namespace e2d | namespace e2d | ||||||
| { | { | ||||||
| 	template<class Interface> | 	template<class Interface> | ||||||
| 	inline void SafeReleaseInterface(Interface **pp)  | 	inline void SafeReleaseInterface(Interface*& p) | ||||||
| 	{  | 	{ | ||||||
| 		if (*pp != nullptr)  | 		if (p != nullptr) | ||||||
| 		{  | 		{ | ||||||
| 			(*pp)->Release();  | 			p->Release(); | ||||||
| 			(*pp) = nullptr;  | 			p = nullptr; | ||||||
| 		} | 		} | ||||||
| 	} | 	} | ||||||
| 
 | 
 | ||||||
|  |  | ||||||
|  | @ -101,7 +101,7 @@ | ||||||
|       <Optimization>Disabled</Optimization> |       <Optimization>Disabled</Optimization> | ||||||
|       <PreprocessorDefinitions>WIN32;_DEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions> |       <PreprocessorDefinitions>WIN32;_DEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions> | ||||||
|       <SDLCheck>false</SDLCheck> |       <SDLCheck>false</SDLCheck> | ||||||
|       <DebugInformationFormat>EditAndContinue</DebugInformationFormat> |       <DebugInformationFormat>None</DebugInformationFormat> | ||||||
|       <MinimalRebuild>false</MinimalRebuild> |       <MinimalRebuild>false</MinimalRebuild> | ||||||
|       <TreatWarningAsError>true</TreatWarningAsError> |       <TreatWarningAsError>true</TreatWarningAsError> | ||||||
|     </ClCompile> |     </ClCompile> | ||||||
|  |  | ||||||
		Loading…
	
		Reference in New Issue